我有项目要求,我想在android / iphone中制作即时通讯应用程序,将来可能会支持voip和视频聊天。
现在我有2个选择
1)xmpp - 它是IM的应用层协议,已有近10年的历史,它有很多支持voip的扩展,或者可能是视频聊天,在线/离线状态以及许多其他功能。它被whatsapp,fb,Skype等所有大公司接受
我也听说谷歌因为漏洞而放弃了这个协议。
2)websocket - 它是tcp层协议,它通过单个tcp连接提供全双工通信,它是新的,它在2011年由IETF标准化。我不知道该协议是否主要用于IM。但我知道它可以在tcp层中完成。除了4种方法(即onOpen,onClose,onMessage和onError)之外,我没有看到或听到任何Web套接字的功能/扩展。所以这意味着如果我选择这个,我必须制作我自己的在线/离线状态方法(可能每隔“x”秒/分钟发送一个帧),voip,消息传递信息和其他功能等。我很困惑,在开发,服务器处理成本,安全性,会话处理管理,浏览器支持等方面,我选择了哪一个,xmpp或web socket。
如果我对这两个协议有任何不妥之处,那么请纠正我。
感谢提前