作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 Openfire 3.10.2 XMPP 服务器和 Strophe 库作为客户端。我想通过推送通知向聊天室中所有未加入聊天室的用户发送消息。
如何让 Openfire 用户出现在聊天室中
有插件吗?
聊天室中的用户状态是否保存在数据库中?我怎样才能做到这一点?
最佳答案
您说您会向 IN 聊天室的用户发送消息,而这些用户NOT JOIN 聊天室:这似乎是一个矛盾。如果用户不加入房间,他就不在房间里,因此无法将在房间内交换的消息也发送给该用户。
关于房间在线状态,您不需要插件,但您可以依赖附加到 Strophe.connection 的在线状态处理程序。这是一个例子:
connection.addHandler(onPresence, null, "presence");
...
function onPresence(presence) {
var msg = $(presence);
if (msg.children('x[xmlns^="' + Strophe.NS.MUC + '"]').length > 0) {
// muc presence
onRoomPresence(presence);
} else {
// user presence
onUserPresence(presence);
}
return true;
}
但是,还有一个名为 MUC 的 Strophe 插件(参见 strophe.muc.js)
关于xmpp - 如何让 Openfire 用户出现在聊天室中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32842298/
我是一名优秀的程序员,十分优秀!