适用于即时消息的协议

时间:2013-10-19 10:08:06

标签: xmpp protocols real-time instant-messaging mqtt

我们必须使用SUITABLE协议为Instant Messaging开发本机移动应用程序。 我们还要为该应用程序开发一个网站,以便那些无法登录移动设备的人可以通过网站继续他们的即时消息。

稍后,我们会将语音和视频通话设施添加到原生移动应用和网站。

  1. 现在我的问题是,基于上述情况,我们应该采用哪种协议? 我在互联网上做了一些研究,无法在XMPP,MQTT和MUMBLE中做出选择。
  2. 对于上述标准,哪一个是最好的?

    1. 我是否应该为移动应用程序和网站使用相同的协议? (根本不知道)。为本机移动应用选择相同或不同的协议以及网站是否重要?
    2. 在这里考虑我一个新手。

      你的回答对我来说真的很重要。

      我是网络开发的新手,所以无论我错在哪里都要纠正我。

2 个答案:

答案 0 :(得分:5)

你的问题的答案XMPP vs MQTT vs mumble真的取决于你在问题中没有描述的一些因素。主要取决于您的非功能性要求。

XMPP是一种基于xml的协议,最初设计为即时消息传递协议。在处理所有客户端之间的存在时,它在消息的数量和大小方面具有相当高的开销。您当然可以将您的实现基于XMPP。 Google Talk基于XMPP,它使用XMPP使用名为Jingle的XMPP扩展来设置VOIP会话。

MQTT是一种通用的低开销发布/订阅协议。它不是专门用于实现即时消息传递,但Facebook使用它作为其Facebook信使的基础。 MQTT在消息大小和保持活动要求方面是一种更有效的协议,因此如果您计划扩展到大量用户或者您需要移动客户端具有高响应性,即使在低功能设备上,您也可以选择此项。如果选择MQTT,那么您将自己设计“应用程序级别”协议消息,而不是遵循标准。 MQTT当然可以用作设置语音聊天和视频流的传输。

只要您的服务器端可以适当地处理与移动客户端和Web客户端的交互,您就可以选择不同的协议,而不需要为移动客户端与网站使用相同的协议。

答案 1 :(得分:-1)

Facebook messenger确实支持语音留言.... http://mashable.com/2013/02/21/facebook-voice-messages/