如何使用 JAXL PHP 库 IQ Query Action Protocol XMPP
Posted
技术标签:
【中文标题】如何使用 JAXL PHP 库 IQ Query Action Protocol XMPP【英文标题】:How to IQ Query Action Protocol XMPP with JAXL PHP library 【发布时间】:2014-04-23 16:02:11 【问题描述】:我想向 xmpp 发送一个 iq 查询,并需要一个来自 XMPP 的响应结果。例如:
<iq from='capulet.lit' to='juliet@capulet.lit/balcony' id='s2c1' type='get'>
<ping xmlns='urn:xmpp:ping'/>
</iq>
但是我在http://jaxl.readthedocs.org/en/latest/users/xmpp_extensions.html 中找到了所有文档 并且找不到这样做的方法。所以希望有人能帮助我。谢谢
【问题讨论】:
【参考方案1】:首先,他们的文档几乎完全不存在。提交错误,或者更好的是,向他们发送拉取请求。
特别是对于 ping:
$client->require_xep(array(
'0199' // XMPP Ping
));
如果您想编写自己的协议,请查看他们的 XEP-0199 implementation 示例:
public function get_ping_pkt()
$attrs = array(
'type'=>'get',
'from'=>$this->jaxl->full_jid->to_string(),
'to'=>$this->jaxl->full_jid->domain
);
return $this->jaxl->get_iq_pkt(
$attrs,
new JAXLXml('ping', NS_XMPP_PING)
);
【讨论】:
以上是关于如何使用 JAXL PHP 库 IQ Query Action Protocol XMPP的主要内容,如果未能解决你的问题,请参考以下文章
强制使用 JAXL/XMPPHP 制作的聊天机器人在断开连接时重新连接