如果做一个企业级别的聊天系统,哪些技术问题是重要的,怎么解决?
技术上
- 1.聊天长连接,稳定问题:使用XMPP协议的聊天系统,稳定。
- 单聊
- 文字,表情,图片,音频(speex)
- 扩展:定位,名片,其他
- 群聊-创建房间(指定一个房间号,地址)然后其他人根据房号和地址加入到房间里面实现群聊,XMPP-0045群聊
- XMPP协议下有的网络传输可以使用传输层的TCP/IP协议和UDP协议两种混搭模式。
- 如果出现弱网络。需要制定前后端的定时网络监测和重发机制。如果在时间段里握手失败就直接报发送失败(借鉴微信的弱网络模式)
- 对于两种传输协议都可以封装,然后根据实际情况使用。如果一端出问题,可以直接关闭。不影响正常使用。
- 2.数据缓存,和数据加密。建议使用IOS-CoreData实现数据的缓存,和加密,加密可以选择AES加密处理,和文字加密Base64等
- 3.数据云共享,云缓存。可以随时随地查看数据,配合CoreData 的数据缓存使用。
- 4.文件传输,文件预览。
- 传输:实时传输或者上传云端,后再下载。
- 预览:需要支持大部分的预览文件格式,如:PDF,DOC,Zip,设计类文件等或者使用第三方应用打开。
- 5.消息中心和过滤机制。推送管理,信息管理,过滤算法等。消息传送方式:Email或者应用推送。
- 6.前端的资源数据架构,文件夹管理,路径管理。
- 7.多平台支持:MAC,IPhone,IPad,PC,其他移动端Pad,Phone等
- 8.企业的第三方插件,或个性化定制。按需定制,仿slack。
- 9.多人语音会议,和视频会议等。
- 10.企业聊天机器人等。
网友评论