2016-03-15 5 views
1

Я использую библиотеку converse.js для создания клиента XMPP, но я не могу понять, как отображать полное имя пользователя (если есть) из vCard вместо имени пользователя в чате.Converse.js: Как отобразить полное имя из vCard в чате

Есть ли какое-то простое решение для конфигурации, или мне нужно написать собственный плагин для него?

ответ

1

Если у пользователя есть полное имя, установленное в VCard, оно будет автоматически установлено в окне чата сразу после получения VCard.

Вы можете получить его через converse.chats.open(jid).get('fullname').

UPDATE: в версии 3.0.0 и выше, вам необходимо зарегистрировать плагин, а затем в плагине вы можете получить его с помощью:

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

Это происходит асинхронно, так что вы можете столкнуться когда вы пытаетесь получить полное имя перед возвратом VCard.

Если вы пишете свой собственный пользовательский вид, который хотите обновить автоматически по мере того, как материал будет установлен, вам придется написать плагин, чтобы вы могли получить доступ к базовому ChatBox Backbone.Model и добавить событие слушатель для fullname.

Смежные вопросы