XMPP:客户端仅从资源绑定接收通知
Posted
技术标签:
【中文标题】XMPP:客户端仅从资源绑定接收通知【英文标题】:XMPP: Client Receives Notifications Only From Resource Bound 【发布时间】:2014-04-09 17:40:45 【问题描述】:我正在用 Python 构建一个 XMPP 客户端。客户端需要从多个 pubsub 获取通知。在会话初始化期间,客户端必须绑定到资源。
例如,客户端可以绑定到pubsub.sales
。
<body rid="34314915"
sid="fe63566533334135bb2edf70b80a62743416b584"
xmlns="http://jabber.org/protocol/httpbind">
<iq id="KVwaFGvr+M53"
type="set"
xmlns="jabber:client">
<bind xmlns="urn:ietf:params:xml:ns:xmpp-bind">
<resource>pubsub.sales</resource>
</bind>
</iq>
</body>
当我这样做时,客户端只会从它所绑定的资源中获取消息。如何从其他 pubsub 获取通知?
【问题讨论】:
【参考方案1】:问题与存在有关。这是客户端发送的内容:
<body rid="34314917"
sid="fe63566533334135bb2edf70b80a62743416b584"
xmlns="http://jabber.org/protocol/httpbind">
<presence xmlns="jabber:client">
<priority>-1</priority>
</presence>
</body>"""
当优先级为负时,客户端只接收发送到 full JID 的通知。我将优先级设置为 7,现在客户端会收到来自所有订阅的 pubsub 的通知。
【讨论】:
以上是关于XMPP:客户端仅从资源绑定接收通知的主要内容,如果未能解决你的问题,请参考以下文章
当两个 Jabber (XMPP) 客户端连接时,只有一个能够接收消息,两个都可以发送