Контакт добавлен в реестр с использованием подписки, а также не показывает присутствие контакта с помощью strophe.js
Я учу xmpp с помощью strophe.js, магистрали.
Я разрабатываю функцию отправки запросов на добавление в друзья на моем веб-сайте. Для этого я написал следующий код в магистрали:
var statusClass = constants.loggedInUserDetails.Status;
var user1JIDXmpp = params.userID + 'xmppExtensionName: "@exterprise1.com/foobar"';
connection.send($pres({ to: user1JIDXmpp, type: "subscribed" }));
if (statusClass == 'busy') {
connection.send($pres({ to: user1JIDXmpp, type: "dnd" }).c("show").t("dnd"));
}
else if (statusClass == 'available') {
connection.send($pres({ to: user1JIDXmpp, type: "available" }).c("priority").t("1"));
}
else if (statusClass == 'offline') {
connection.send($pres({ to: user1JIDXmpp, type: "offline" }).c("status").t("unavailable"));
}
и в strophe.roster.js записан код для добавления контакта в реестр при получении присутствия.
Проблема, с которой я сталкиваюсь: после этого процесса, если какой-либо контакт меняет свое присутствие, он не уведомляет контакт, подписанный в реестре.
Он уведомляет о наличии контакта только после повторной регистрации контакта.
Как решить эту проблему? Я что-то пропустил?