尝试将converse.js与php预绑定到openfire服务器


Trying Prebinding converse.js with php to an openfire server

所以我有一个网站,你可以用用户名和密码登录,我希望通过这个登录,可以为converse.js 生成会话

我一直在阅读文档和SSO支持,最后以一个使用php预绑定的示例repo结束。链路

我准备了一个对象,它应该是我将从控制器调用的模型,但有些参数我不确定它们是什么。

$xmppPrebind = new XmppPrebind('your-jabber-host.tld', 'http://your-jabber-host/http-bind/', 'Your XMPP Clients resource name', false, false);
$xmppPrebind->connect($username, $password);
$xmppPrebind->auth();
$sessionInfo = $xmppPrebind->getSessionInfo(); // array containing sid, rid and jid

XmppPrebind构造函数上的第三个参数"您的XMPP客户端资源名称"是什么?

此外,在执行连接功能时,参数$username和$password。。。这些是我从我的登录表(我的网站上的)或某个有效用户&openfire服务器上的密码对?

  • "您的XMPP客户端资源名称"=您想要的任何名称,例如:myWebChat
  • "此外,在执行连接功能时,参数$username和$password…是我从登录表单(我网站上的表单)中获得的参数,还是openfire服务器上的某个有效用户和密码对?"使用预绑定可以让用户在登录你的网站时自动登录到你的xmpp服务器,因此帐户必须在xmpp服务器上有效

$sessionInfo将具有sid-rid和jid。第三个参数将添加到jid中。你会得到这样的东西:

"you@conference.conversejs.orgYourXMPP客户端资源名称"

所以把它设为空。

我想应该只设置第一个或第三个参数,而不是同时设置这两个参数。