使用php连接到windows live messenger xmpp

使用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身份验证应该很容易,如下所述:

如何将xmpp windows live messenger与php连接?我正在使用xmpphp和jaxl库,并成功地与google talk连接。

内置了对
PLAIN
、google talk
X-OAUTH2
DIGEST-MD5
CRAM-MD5
SCRAM-SHA-1
EXTERNAL
和facebook
X-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';
});