XMPP多个选项卡同步已发送的消息

时间:2013-01-16 01:08:52

标签: session xmpp openfire strophe

我正在使用Strophe.js在网站上实现一个Openfire聊天客户端。我设法获得多个会话和多个窗口重新加载页面并重新连接回来。现在我在恢复聊天记录方面遇到了挑战。 但是,当用户打开我们站点的两个选项卡时,我遇到的第一个问题是它创建了两个具有不同资源ID的xmpp会话但是现在说 a@example.com/tab1向朋友发送了一条消息,这应该在tab2中同步

如果您发送来自gtalk用户发送消息的聊天消息的示例将更新并在gmail聊天窗口中显示。

任何人都有任何想法。 非常感谢您的时间和帮助。

2 个答案:

答案 0 :(得分:1)

多个资源的路由逻辑取决于服务器实现。 GTalk服务器将发送到裸Jids 的消息路由到所有连接的资源。许多其他服务器(也是Openfire)向裸Jids发送消息到最可用资源,这是具有最高优先级的资源。

如果每个标签都有自己的资源,那么我建议将消息​​发送到每个资源(完整的jid )手册。您可以通过在线状态获得订阅联系人的所有连接资源。

答案 1 :(得分:0)

是的,有。看一下XEP-0280:Message Carbons(http://xmpp.org/extensions/xep-0280.html

您的客户端和服务器都必须支持它才能完全正常工作。

来源:https://superuser.com/questions/866785/is-there-a-way-to-sync-xmpp-messages-across-different-devices-with-standard-xmp