我选择了XMPP服务器,目前正在尝试NodeXMPP。我安装了完整的NodeXMPP (核心、服务器、客户端、组件、依赖项...)。
让我印象深刻的是,我必须做所有的后端工作:让客户机相互交谈,等等。从头开始做这些事情。
我的小实例:我创建了一个服务器并将客户端存储在一个数组中,然后在其他客户端尝试说话时搜索客户端:
var xmpp = require('../index')
var c2s = new xmpp.C2SServer({
port: 5222,
domain: 'localhost'
})
var clients = new Array();
c2s.on('connect', function(client) {
client.on('authenticate', function(opts, cb) {
console.log('AUTH' + opts.jid + ' -> ' +opts.password)
clients.push(client);
})
client.on('stanza', function(stanza) {
if (stanza.is('message') && (stanza.attrs.type !== 'error')) {
var interlocuteur = getClient(stanza.attrs.to)
if (interlocuteur)
interlocuteur.send(stanza)
}
})
client.on('disconnect', function() {
console.log('DISCONNECT')
})
client.on('online', function() {
console.log('ONLINE')
client.send(new xmpp.Message({ type: 'chat' }).c('body').t('Hello there, little client.'))
})
})我的问题是:我真的需要自己编写这些基本操作吗?如果是,Node-XMPP的意义是什么?也许是为了在像prosody这样的其他XMPP服务器上使用NodeJS?
发布于 2017-02-17 07:34:30
node-xmpp“仅仅”是一个组件库,允许您构建自己的客户端、组件甚至服务器。
作为一个库,它没有为特定的用例提供一个完整的解决方案,而是一组允许构建一个的构建块。
如果您所在的市场是一个完整的、已经制造的盒装XMPP服务器解决方案,那么安装Prosody是一个很好的选择。:^)
https://stackoverflow.com/questions/30775718
复制相似问题