Я использую Strophe.js для подключения к XMPP-серверу (ejabberd) в Angular6?
При загрузке страницы я добавил следующий addHandler (), чтобы активировать прослушиватель
ngOnInit() {
connectionXmpp.connection.addHandler((msg) => {
console.log(msg)
//parse xml stanza return by xmpp
$(msg).each(function () {
$(msg).find("title").each(function () {
latestMsg = JSON.parse($(this).html());
// here logic after getting message
})
})
return true;
}, null, 'message')
}
С помощью вышеуказанного кода слушатель регистрируется в методе ngOnInit (), но он получает список объектов (сообщений) с XMPP-сервера (ejabberd) каждый раз, когда загружается страница.
При загрузке я просто хочу зарегистрировать слушателя.Функция обработчика должна вызываться только тогда, когда XMPP-сервер (ejabberd) отправляет сообщение.
Как мне этого добиться?
Заранее спасибо.