我正在用 strophe.js 学习 xmpp,主干。
我正在我的网站上开发好友请求发送功能。为此,我在主干中编写了以下代码:
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 中编写代码,用于在收到存在时在名册中添加联系人。
我面临的问题是:在此过程之后,如果任何联系人更改状态,那么它不会通知在名册中订阅的联系人。
只有在再次订阅联系人登录后才会通知联系人存在。
如何解决这个问题呢 ?我错过了什么吗?