0

node- xmpp -clientパッケージを使用して XMPP サービスに接続しています。サービスは、外部ソースからメッセージを受信すると、メッセージを公開します。私の目標:

  1. サービスに接続する
  2. 認証を受ける
  3. 興味のあるいくつかのノードにサブスクライブします。 (ノード名はわかっています)
  4. ノードからスタンザを受信して​​、新しいメッセージが入ってきたことを知り、それを処理します。

こちらのサンプルコードを参考にしています。

以下のコードでサービスに接続できました。これにより、サーバーに対して自動的に認証されますか? 「認証」イベントを受け取りません。そうでない場合、認証を明示的に要求するにはどうすればよいですか?

var client = new xmpp.Client({
    jid: 'someuser@somedomain.com',
    password: 'somepassword',
    host:'somehost',
    port:5222
})

次に、パブリッシャー ノードにサブスクライブするにはどうすればよいですか? client.send(new xmpp.Message(..)) を実行する必要がありますか? はいの場合、xmpp.Message をどのように構築する必要がありますか? XMPP の Web で XMPP サブスクリプション iq を確認できますが、それを node-xmpp の API にマッピングするのが困難です。

<iq type='set'
    from='francisco@denmark.lit/barracks'
    to='pubsub.shakespeare.lit'
    id='sub1'>
    <pubsub xmlns='http://jabber.org/protocol/pubsub'>
        <subscribe
            node='princely_musings'
            jid='francisco@denmark.lit'/>
    </pubsub>
</iq>
4

1 に答える 1

0

おそらく、xmpp-ftw-pubsub https://github.com/xmpp-ftw/xmpp-ftw-pubsub/blob/master/lib/pubsub.js#L111-L137でこれを行った方法を見るのが最も簡単です

于 2015-02-06T10:20:54.197 に答える