资源描述:
《anychat即时通讯系统》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、Anychat即时通讯系统一、背景即时通讯(InstantMessaging)是目前Internet上最为流行的通讯方式,各种各样的即时通讯软件也层出不穷;服务提供商也提供了越来越丰富的通讯服务功能。不容置疑,Internet已经成为真正的信息高速公路。由于Internet的广泛使用,客户与服务器端之间能否有效地进行交互成为我们要解决的问题。从实际工程应用角度出发,以计算机网络原理为指导,结合当前网络中的一些常用技术,编程实现基于C/S架构的网络聊天工具是切实可行的。作为计算机网络的应用之一聊天工具,受到
2、了用户的普遍普片爱好,它把人们带进了一个虚拟的网络世界,大大的加深了人们之间的联系.从单一的文本聊天,到语音聊天以及到现在的图像,视频聊天,及时短信的发送和在线游戏等功能的开发,已经大大的拓展了聊天工具的概念,它将会作为未来人们通过因特网相互联系和娱乐的主要平台。聊天工具的开发主要用到了网络通信技术,语音的采集,压缩,传输,解压缩以及回放等技术,文件传输技术,Windows的多线程技术以及视频的采集,压缩解压缩技术等。而且在我们生活中已经产生了成熟的这种及时通讯软件。例如:腾讯公司推出的QQ,Micros
3、oft公司推出的MSN等及时通讯软件,给我们的工作,生活,学习带来了极大的便利。但是这些公司都只提供软件的客户端程序免费下载,而不提供其服务器程序,因此对于未与互联网连接的私有网络,这些软件就用不上了 二、概念AnyChatSDK(AnyChat音视频互动开发平台)是一套跨平台的(*)即时通讯解决方案,基于先进的H.264视频编码标准、AAC音频编码标准与P2P技术,支持高清视频,整合了佰锐科技在音视频编码、多媒体通讯领域领先的开发技术和丰富的产品经验而设计的高质量、宽适应性、分布式、模块化的网络音视频互
4、动平台。 AnyChat音视频互动开发平台(SDK)包含了音视频处理模块(采集、编解码)、流媒体管理模块(丢包重传、抖动平滑、动态缓冲)、流媒体播放模块(多路混音、音视频同步)以及P2P网络模块等多个子模块,封装了底层的硬件操作(音视频采集、播放)、封装了流媒体处理(编解码、网络传输)等非常专业和复杂的技术,为上层应用提供简单的API控制接口,可以在极短的开发周期,以及极少的人力资源投入下为客户的现有平台增加音视频即时通讯、多方会议的功能。 AnyChatSDK分为客户端SDK和服务器SDK两大部分,其中
5、客户端SDK用于实现语音、视频的交互以及其它客户端相关的功能,而服务器SDK主要实现业务层逻辑控制,以及与第三方平台的互联等。客户端SDK和服务器SDK均支持C++、C#、WPF、VB.Net以及Delphi等开发语言和框架。三、安装部署AnyChat服务器部署核心服务器流程:1、安装服务:执行服务器程序目录下的批处理程序:install.bat2、2、修改配置文件(AnyChatCoreServer.ini):·如有授权证书,请将DemoMode改为0,让服务器运行于授权模式下,默认DemoMode=1
6、,表示工作于演示模式;·如有SDKFilterPlus插件,请配置好SDKFilterPlus配置项;3、将对应的证书:AnyChat.cer拷贝到服务器程序所在目录;4、在“服务”中启动“AnyChatPlatformService”服务;5、启动服务后,可通过日志文件(AnyChatCoreServer.log)判断服务器是否启动成功,如果启动失败,则会提示相关的出错信息。(注:如果采用UKey授权,则需要先插入UKey,再启动服务,认证成功之后,UKey指示灯会开始闪烁,服务器退出,或是停止服务后,
7、UKey指示灯会关闭;UKey授权方式需要4.1.0.1以上版本服务器程序才能支持)部署业务服务器流程:(业务服务器是指采用AnyChatCoreServerSDK开发的服务器,专门用于处理业务流程)1、修改配置文件(AnyChatCoreServer.ini)2、从SDK包的binServerSDK目录下拷贝“IPCFilterPlus.dll”库文件到核心服务器目录下3、重启核心服务器4、启动业务服务器(AnyChatServerSDK.dll必须和业务服务器在同一个目录下),业务服务器便会收到与核
8、心服务器连接成功的消息。 四、AnyChatSDK的用途 在线真人视频游戏平台(典型案例:盛大棋牌):将AnyChatSDK做为底层的视频引擎,实现打牌的玩家之间可以互相看到视频,可以互相语音聊天,为游戏提供了玩家面对面交流的空间,增强了游戏的用户真实感。 视频会议系统(典型案例:视源互动欣喜):利用AnyChatSDK出色的音、视频表现,为其单机设备提供联网功能,并实现在线视频会议的功能,可以实现不同的设备之间互相音视频交流