2016-04-26 16 views
1

私はmqttノードモジュールからmqttクライアントを持っています。誰かが(exemple用)/ 165をtopic2するために発行するとき、私はexemple topic1 /#、topic2 /#Node.js Mqttクライアント:一致するトピック

のためのトピックにサブスクライブ

は、私が購読トピック "topic2 /#" が一致したことを知ってほしいです。

これを行う簡単な方法はありますか?

答えて

1

は正規表現

client.on('message', function (topic, message) { 
    var topic1_re = /^topic2\/.*/; 
    var topic2_re = /^topic2\/.*/; 

    if (topic.matches(topic1_re)) { 
    //topic 1 
    } else if (topic.matches(topic2_re)) { 
    //topic 2 
    } 
} 
+0

はい、それは動作しますが、私はすべての私の加入したトピックを参照しなければならないを使用します。私はmqttライブラリがすでにそういうことをしていると思うので、おそらく直接トピックに一致するものを見つけるための方法があります。 – igor

+1

いいえ、クライアントサイドライブラリには、サブスクリプションが一致していない完全なトピックしかありません。すべての一致がブローカで行われます – hardillb

関連する問題