1、图像处理:采用CxImage图像操作类库,它可以快捷地存取、显示、转换各种图像;(暂时没找到在哪使用了)
一、win-client:
1、解析参数:采用jsoncpp;
示例:登陆msg_server服务时候从config.dat中取配置信息;
2、界面:从XML中获取控件等UI界面是用的Duilib界面库画出来的;
示例:登陆界面的tipText框,提示内容取自:chinese.ini
3、日志:yaolog记录日志;格式:LOG__(szLogID, szFormat, ...);
示例:LOG__(ERR,_T("bad function call-m_keyId:%d"),m_keyId);
4、音频处理:
4.1、libogg是一个C++库,用来处理 Ogg 多流传输格式的解码器;
4.2、Speex是一套专门用于压缩声音的库,压缩声音的性能非常高;
5、消息处理:Tcp Socket;netlib库;
6、数据报文的结构:采用Protocol Buffer(简称PB)是google 的一种数据交换的格式;
7、http请求:采用httpclient;
9、表情处理:采用GifSmiley动态gif,bmp,jpg等图片文件;
二、php_Server:采用CodeIgniter框架;
三、IM_SERVER与IM_DBPROXY:
server都是用的netlib,而netlib虽然是用c++写的,但其实却是C风格的。所有的接口都是封装成netlib_xxx的函数形式。而异步的操作直接传入一个回调函数,这种做法和node.js的异步是非常相似的。(摘自笨笨的鸡蛋的博客)
1、login_server
2、db_proxy_server
3、http_msg_server
4、msg_server
5、route_server
6、msfs
7、PushServer
采用了SigSlot(信号槽),用来绑定事件的响应处理函数;
8、FileServer
以上分析下来,我要修改PC客户端,则必须先学习Duilib库的使用先。一个个来吧。。。
相关网址:
1、开源即时通讯解决方案 TeamTalk(项目简介)
http://www.oschina.net/p/teamtalk/
2、TeamTalk 一键部署方案:TTAutoDeploy
http://www.open-open.com/lib/view/open1414591839840.html
3、TeamTalk消息服务器原理及二次开发简介(笨笨的鸡蛋)
http://my.oschina.net/u/877397/blog/483599
4、TeamTalk 服务端分析 一、编译(蓝狐)
http://www.bluefoxah.org/teamtalk/TeamTalk_Compile.html