由于业务系统中对消息、通讯以及业务流程管理(批复、签订等)的需要,笔者准备开发一套属于自己应用的IM系统,系统要求:
1.可实现用户的登录、分组、在线、离线消息的发送
2.实现文件的传输(在线,离线)
3.Com Plug 可以被其他的业务系统应用并进行扩展
4.满足100人以下的同时在线
暂时比较重要的功能就是这3点!!
技术方案:
1.采用Delphi中的Indy组件(其他组件)实现
2.采用winsocket方式实现(select, 消息,IOCP等)
3.基于Jabber的架构(服务器不用开发)
从开发成本,系统扩展性,可持续性等方面,选择第三种方案。
采用Delphi + OpenFire + DB架构进行相关的开发,客户端Jabber类库可以参照Exodus(anyQ)的库函数完成
XMPP协议的实现。