Converse.js:如何在聊天框中显示来自vCard的全名

时间:2016-03-15 10:30:52

标签: xmpp converse.js

我正在使用converse.js库来创建XMPP客户端,但我无法弄清楚如何在vCard中显示用户的全名(如果有),而不是聊天框中的用户名。

是否有一些简单的配置解决方案,或者我需要为它编写自定义插件?

1 个答案:

答案 0 :(得分:1)

如果用户在VCard中设置了全名,则一旦获取了VCard,它就会自动在聊天框中设置。

您可以通过converse.chats.open(jid).get('fullname')获取。

更新:在版本3.0.0及更高版本中,您需要注册一个插件,然后在插件中,您可以通过以下方式获取:

_converse.api.chats.open(jid).get('fullname')

这是异步发生的,所以你可能会遇到时间问题,试图在VCard返回之前获取全名。

如果您正在编写自己想要在设置内容时自动更新的自定义视图,那么您必须编写一个插件,以便您可以访问底层的ChatBox Backbone.Model并添加一个事件监听器fullname