Xmpp聊天隐形状态
我正在构建一个机器人,它可以监视朋友的存在,但不需要可见。 我尝试使用优先级、显示、键入和所有已知值设置状态,但没有成功。 是否可能是不可见的,只接收状态通知 谢谢 看一看。状态信息具有订阅状态。如果您的bot已订阅从您的用户接收状态,但您的用户未订阅,则不会通知他们bot的存在 换句话说,您的机器人应该发送:Xmpp聊天隐形状态,xmpp,facebook-chat,Xmpp,Facebook Chat,我正在构建一个机器人,它可以监视朋友的存在,但不需要可见。 我尝试使用优先级、显示、键入和所有已知值设置状态,但没有成功。 是否可能是不可见的,只接收状态通知 谢谢 看一看。状态信息具有订阅状态。如果您的bot已订阅从您的用户接收状态,但您的用户未订阅,则不会通知他们bot的存在 换句话说,您的机器人应该发送: <presence to="user@example.com" type="subscribe" /> 然后是用户的授权 <presence to="bot@ex
<presence to="user@example.com" type="subscribe" />
然后是用户的授权
<presence to="bot@example.com" type="subscribed" />
现在,机器人将收到用户的提示,但不是相反的提示。请参见第3.1节:
<iq from='bilbo@tolkien.lit/shire' type='set' id='inv1'>
<query xmlns='jabber:iq:privacy'>
<list name='invisible'>
<item action='deny' order='1'>
<presence-out/>
</item>
</list>
</query>
</iq>
要设置不可见状态,必须发送类型为“不可见”的状态信息 我使用此代码将我的状态设置为“不可见”。
有关更多详细信息,请阅读上次我从Facebook了解到的文档,无法通过XMPP命令实现不可见性:。还可以在限制下查看啊,很好,我甚至不知道这个存在!不幸的是,我猜它不受支持,那你就太倒霉了。我做了一些订阅实验,但facebook似乎不支持它,因为我的订阅被忽略,而且我从未收到订阅请求,我担心如果我的或Joe的解决方案不支持facebook,它们将无法与facebook合作。请注意XEP-0018已被XMPP委员会拒绝,不应在一般的XMPP客户端中实施()。正如Joe Hildebrand所建议的,通过XEP-0126的隐私列表是推荐的方法。
<presence type="invisible"/>
XMPPPresence *presence = [XMPPPresence presenceWithType:@"invisible"];
[[self xmppStream] sendElement:presence];