問題タブ [hivemq]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
hivemq - HiveMQ プラグイン機能を外部に公開する方法は?
ハイブmqブローカーがインストールされており、ブローカー内にプラグインがあります。プラグインには、ユーザー ID を指定して、ユーザーがサブスクライブしているトピックを取得する機能があるとだけ言っておきましょう。エンド ユーザーが自分がサブスクライブしているトピックを知りたい場合、その方法の 1 つは、プラグインがリッスンする事前定義されたトピックにメッセージを発行し、トピックのリストを取得してから、リストを発行して戻すことです。ユーザー。プラグインの外部にデータを公開する他の方法 (Http がすぐに思い浮かびますが、Hive MQ プラグインでは実行できないと思います) を知りたいですか?
ここに同じ質問を投稿しました
sockets - ローカルブローカーへの TCP ソケット接続
TCPソケット接続を使用して、小さなサーバー(ブローカー)HiveMQに接続しようとしています。cmd 経由でサーバーに ping を実行すると、次のメッセージが表示されます。
TCP 0.0.0.0:1883 0.0.0.0:0 LISTENING
C の接続コードは次のようになります。
addr.sin_family = SL_AF_INET;
addr.sin_port = sl_Htons(1883);
addr.sin_addr.s_addr = sl_Htonl("0.0.0.0");
そして、私はこのエラーを受け取ります:
Error [-111] at line [926] in function [ConnectionToHiveMq]
これは、ソケット接続のエラーを示しています。
rc = sl_Connect(mysock, (SlSockAddr_t *) &addr, sizeof(addr));
誰かがこれで私を助けることができますか? 多くの異なるポート番号と IP: を試しましたが、それでもうまくいきません。このコードからメッセージをサブスクライブできる Web 上のアプリケーション クライアントに接続すると機能します。しかし、ローカル(ブローカー)サーバーで試してみると、うまくいきません...
rabbitmq - mqtt 3.1.1 で、「サブスクライブしていない」サブスクライバーに永続的なセッションを利用する
接続が制限されている可能性があるクライアントの 1-1、1-n、nn 通信を満たすチャット サービスとしての MQTT プロトコルの評価。
現在の設計では、デフォルトですべてのクライアントが一意の ID に基づいてチャンネルをサブスクライブします。
e.g. 'users/9932947'. Messages (payload: JSON) published to this channel would contain a new randomly generated topic, e.g. 'conversations/2938475', for the conversation to continue.
これにより、1-1、1-n、および nn の通信が可能になります。そして、送信された最初のメッセージが「会話」を開始することを意味します。新しいメッセージを初期化することにより、同じ受信者リストで新しい会話を開始できます。(プラグインはペイロードにリストされた複数の受信者を処理でき、1-1,1-n,nn の会話を処理するロジックはクライアント側で発生すると想定しています)
次に、pub/sub パラダイムで、ユーザー 1234 がユーザー 5678 にメッセージを送信しても、ユーザー 5678 がまだサブスクライブしていない場合、メッセージが失われ、場合によっては悪い結果になるという現実に直面します。複数のメッセージが送信される可能性があるため、'retain' フラグの使用は理想的ではありません。
そのため、サブスクライバーがメッセージを受信すると、ロジック フローは受信者がペイロードで識別された新しいトピックをサブスクライブするよう指示します。私はおそらく、pub/sub パラダイムを破っているのかもしれませんし、動的トピックとメッセージの有効期限に関して何かが欠けているのかもしれません。
ブローカ/キュー システムが連絡先データベースから消費できることを知っていれば、永続セッションがユーザー用に自動的に作成され、それらのユーザーはこれらのランダムに生成されたトピック/会話にサブスクライブできますか? これはデザインが悪いのでしょうか?スケーリングに問題はありますか?
windows - JavaScript クライアントを使用して mqtt ブローカーに接続できません
エラーが発生しています
SCRIPT12152: WebSocket エラー: ネットワーク エラー 12152、サーバーが無効または認識できない応答を返しました
IE で、および
'ws://192.168.1.100:1883/' への WebSocket 接続に失敗しました: ハンドシェイク応答を受信する前に接続が閉じられました
クロムで..以下は私が使用したコードです
python - HiveMQ と IoT 制御
最近、HiveMQ を Ubuntu マシンにインストールしましたが、すべて正常に動作します。Linux が初めてなので (私は Windows の方が好きです)、次の質問に行き詰まっています。
コマンドを ./bin/run.sh として HiveMQ を起動しました。ウィンドウが開き、HiveMQ が実行されていることを確認します。パテでこれを開始し、パテを閉じると、HiveMQ も停止します。HiveMQ を常に実行する方法は?.
IoT プロジェクト (raspberry pi) に HiveMQ を使用しています。Python から HiveMQ ブローカーにサブスクライブして公開することは知っていますが、混乱するのは、これを機能させるために Python プログラムを継続的に実行する必要があるかどうかです。Pi で 2 つ以上の GPIO をトリガーする必要があると仮定すると、1 つのプログラムを作成し、トリガー イベントの 2 つ以上のトピックにサブスクライブさせることで、プログラムを実行し続けることができますか?
どんな助けでも大歓迎です。
ありがとう
javascript - HiveMQ ウェブソケット JavaScript
で入手可能なチュートリアルを使用して、Web ソケット対応アプリケーションを再作成しようとしています。
http://www.hivemq.com/build-javascript-mqtt-web-application/
角度とブートストラップを使用。
ここに私のサンプルコードがあります:
これは、メッセージを入力しようとしているテキストボックスのhtmlコードです。
問題は、Web ブラウザーのコンソールで $log.info($scope.tweet)
、発行されたメッセージの印刷を確認できますが、テキスト ボックスに入力されないことです。なぜこれが起こっているのでしょうか?ありがとう
ここにコントローラーの完全なコードがあります
(関数 () { var HomeController = 関数 ($scope, $log, $modal) {
IotApp.controller("HomeController", HomeController);
}());