使用php连接到windows live messenger xmpp
如何将xmpp windows live messenger与php连接?我正在使用xmpphp和jaxl库,并成功地与google talk连接。内置了对使用php连接到windows live messenger xmpp,xmpp,windows-live-messenger,xmpphp,Xmpp,Windows Live Messenger,Xmpphp,如何将xmpp windows live messenger与php连接?我正在使用xmpphp和jaxl库,并成功地与google talk连接。内置了对PLAIN、google talkX-OAUTH2、DIGEST-MD5、CRAM-MD5、SCRAM-SHA-1、EXTERNAL和facebookX-facebook-PLATFORM身份验证机制的支持 它还提供了实现应用程序中可能需要的任何自定义身份验证机制的能力。实现X-MESSENGER-OAUTH2身份验证应该很容易,如下所述:
PLAIN
、google talkX-OAUTH2
、DIGEST-MD5
、CRAM-MD5
、SCRAM-SHA-1
、EXTERNAL
和facebookX-facebook-PLATFORM
身份验证机制的支持
它还提供了实现应用程序中可能需要的任何自定义身份验证机制的能力。实现X-MESSENGER-OAUTH2
身份验证应该很容易,如下所述:
签出最新版本的JAXL客户端对象并按如下方式初始化它:
require_once 'jaxl.php';
$client = new JAXL(array(
'jid' => 'messenger.live.com', // <-- dummy jid required for DNS SRV lookup
'pass' => '',
'log_level' => JAXL_DEBUG
));
这会让你走的
注意:当前版本的Jaxl库依赖于输入jabber id进行DNS SRV查找,从中提取用于建立套接字连接的目标主机:端口。因此,您必须为jid
和pass
传递虚拟值,如上所示(直到在将来的版本中修复)
我在没有任何测试的情况下编写了上述步骤,但它应该可以正常工作。有关如何使用XML创建样式的更多详细信息,请参见。谢谢回复。我跟随你的方式,但它不起作用。它从等待流特性的状态处理程序中获得了“无效的返回值”
$client->add_cb('on_stream_features', function($stanza) {
global $client, $access_token;
$auth = new JAXLXml('auth', NS_SASL, array('mechanism'=>'X-MESSENGER-OAUTH2'));
$auth->t($access_token);
$client->send($auth);
return 'wait_for_sasl_response';
});