谷歌 GTalk 客户端(web、android、windows)有强大的能力从服务器中吸取对话历史记录,即使对话是在另一个 jabber 客户端完成的。
- 什么 jabber (XMPP) 功能 (XEP) 用于此,还是一些自定义的东西?
- 为什么没有其他 XMPP 客户端(非 Google)具有这种能力?
PS 这是编程问题,因为我在询问特定的 XMPP 功能。
谷歌 GTalk 客户端(web、android、windows)有强大的能力从服务器中吸取对话历史记录,即使对话是在另一个 jabber 客户端完成的。
PS 这是编程问题,因为我在询问特定的 XMPP 功能。
这可能是使用消息归档来完成的。参见 XEP-0136:http: //xmpp.org/extensions/xep-0136.html
(关于另一个答案,ejabberd 支持:http ://www.ejabberd.im/mod_archive )
它是 XMPP 服务器而不是 XMPP/Jabber 客户端的属性。所有对话都通过 XMPP 服务器进行。因此,如果服务器想要它可以存储所有历史记录。据我所知,没有可以存储历史的开源 XMPP 服务器。
谷歌拥有一切。
我不确定,但我认为没有特定的 XEP 用于在服务器上存储历史记录。
服务器端 XEP-0136(消息存档)可以使用 ejabberd + mod_archive(带有 sql 后端的 mod_archive_odbc 变体,以获得更好的性能)或带有开放存档插件的 openfire 服务器来完成。
客户端,对于 XEP-0136,我使用了 Vacuum im,http://code.google.com/p/vacuum-im/,它是开源和跨平台的。