Javascript 如何在openfire状态下将脱机更改为联机?
我正在使用XMPP创建一个messenger。 我确实成功连接到openfire服务器 控制台日志还接收到“正在连接”和“已连接”状态,但我检查了openfire管理控制台上的会话: 姓名:匿名Javascript 如何在openfire状态下将脱机更改为联机?,javascript,angularjs,xmpp,openfire,strophe,Javascript,Angularjs,Xmpp,Openfire,Strophe,我正在使用XMPP创建一个messenger。 我确实成功连接到openfire服务器 控制台日志还接收到“正在连接”和“已连接”状态,但我检查了openfire管理控制台上的会话: 姓名:匿名 资源:一些值 节点:本地 状态:已验证 状态:离线 如果我使用spark客户端程序,它会将状态更改为在线状态 我怎样才能改变这一点? 我应该在行中添加更多代码吗 var jid = 'id'; var pw = 'testpw'; var BOSH_SERVICE = 'http://127.0.0.1
资源:一些值
节点:本地
状态:已验证
状态:离线 如果我使用spark客户端程序,它会将状态更改为在线状态 我怎样才能改变这一点? 我应该在行中添加更多代码吗
var jid = 'id';
var pw = 'testpw';
var BOSH_SERVICE = 'http://127.0.0.1:7070/http-bind/';
var connection = null;
connection = new Strophe.Connection(BOSH_SERVICE);
connection.connect(jid, pw, callback);
function callback(status){
console.log(status);
}
要声明状态,必须在回调函数中添加以下行:
if (status == Strophe.Status.CONNECTED) {
connection.send($pres());
}
如果您需要一个基于XMPP(使用Strophe.js)的web客户端示例,请查看下面的我的Plunker:
添加了send($pres())
只是可以看到连接
未添加发送($pres())
可以查看连接和连接日志谢谢海狸。添加连接后,我从openfire管理控制台检查状态。将($pres())代码发送到行。但是状态仍然脱机..和console.log正在连接已结束。如果没有,请使用connection.send($pres())。console.log正在连接,但您是否已从Plunker尝试我的客户端(使其适应您的Openfire配置)?我现在已尝试。它工作得很好!!。我会发现我的代码有问题。谢谢海狸:)
if(status === Strophe.Status.CONNECTED){
connection.send($pres());
console.log('connected');
}
if(status === Strophe.Status.CONNECTED){
console.log('connected');
}