Rya*_*Dev 11 xmpp google-talk node.js
我尝试过为Node.js使用各种XMPP库,但是无法连接到Google Talk的XMPP服务器.我想连接和阅读朋友的状态,但我甚至无法出门!
mydomain.com.我已经编写了以下代码 - 它使用了node-xmpp库(https://github.com/astro/node-xmpp):
jid = 'ryan@mydomain.com';
password = 'my_google_password';
// Establish a connection
var conn = new xmpp.Component({
jid : jid,
password : password,
host : 'talk.google.com',
port : 5222
});
conn.on('online', function(){
sys.put("ONLINE");
});
conn.on('error', function(e) {
sys.puts(e);
});
Run Code Online (Sandbox Code Playgroud)建立连接,但身份验证失败,我从Google Talk收到此消息:
<stream:error xmlns:stream="http://etherx.jabber.org/streams" xmlns="jabber:client">
<not-authorized xmlns="urn:ietf:params:xml:ns:xmpp-streams"/>
</stream:error>
Run Code Online (Sandbox Code Playgroud)
......我错过了什么吗?我已经尝试过其他库(https://github.com/mwild1/xmppjs),甚至是Python库,但仍然无法进行身份验证.我100%确定我的Google用户名和密码是否正确 - 任何提示/想法?
Rya*_*Dev 11
弄清楚了.
我正在处理一些不准确的例子.
在上面的示例中,您需要更改:
var conn = new xmpp.Component({...})
Run Code Online (Sandbox Code Playgroud)
...至...
var conn = new xmpp.Client({...})
Run Code Online (Sandbox Code Playgroud)
我在ubuntu linux上安装它我首先必须这样做(首先安装节点/ npm 后从npm网站获取).
sudo apt-get install libexpat1 libexpat1-dev
npm install node-xmpp
sudo apt-get install libicu-dev
npm install node-stringprep
Run Code Online (Sandbox Code Playgroud)
使用此代码段,我成功登录并从我的Gmail帐户向我的jabber.org帐户发送了一条消息:
var argv = process.argv;
const xmpp = require('node-xmpp');
const sys = require('sys');
if (argv.length != 5) {
sys.puts('Usage: node xmpp.js <my-jid> <my-password> <to>');
process.exit(1);
}
const jid = argv[2];
const password = argv[3];
const to = argv[4];
// Establish a connection
const conn = new xmpp.Client({
jid : jid,
password : password,
host : 'talk.google.com',
port : 5222
});
conn.on('online', function(){
console.log('online');
conn.send(new xmpp.Element('presence'));
conn.send(new xmpp.Element('message',
{ to: to, // to
type: 'chat'}).
c('body').
t('testje'));
});
conn.on('error', function(e) {
sys.puts(e);
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11765 次 |
| 最近记录: |