我正在查看node-xmpp和node-simple-xmpp,我正在尝试制作一个简单的客户端。
一切正常,除了断开连接。
我在simple-xmpp示例之后制作了以下文件:
var xmpp = require('simple-xmpp');
xmpp.on('online', function() {
console.log('Yes, I\'m connected!');
xmpp.send('test2@example.com', 'Hello test');
// OK UNTIL HERE, DISCONNECT NOW
});
xmpp.connect({jid: 'test@example.com/webchat', password: 'test', reconnect: 'false'});
但我不知道如何断开连接。我试图发送一个类型不可用的节:
stanza = new xmpp.Element('presence', {from: 'test@example.com', type: 'unavailable'});
xmpp.conn.send(stanza);
delete xmpp;
这导致客户端暂时脱机,但问题是,它会在几秒钟后重新连接并继续发送“存在”节。
我也尝试过调用 xmpp.conn.end(),它也会断开连接,但之后会出现错误:
node_modules/simple-xmpp/node_modules/node-xmpp/lib/xmpp/connection.js:100
if (!this.socket.writable) {
^
TypeError: Cannot read property 'writable' of undefined
那么,我做错了什么?我相信有一种简单的方法可以断开连接。