問題タブ [phpmqtt]
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.
php - 異なるポートでブローカーに接続されたクライアントから発行されたメッセージを取得する方法
Mosquitto ブローカー ベースの POC を開発しています。この POC では、C、Python、phpMQTT の 3 つの異なる MQTT クライアントが使用されており、これらのクライアント間でメッセージを渡す必要があります。しかし、phpMQTT クライアントは SSL/TLS を実装していないため、ソリューション全体で SSL を有効にすることが制限されています。
私の C & Python クライアントが安全なポート、つまり 8883 (TLS オプションが有効になっている) で Broker に接続され、ポート 1883 (TLS オプションなし) で私の phpMQTT クライアントが接続されている場合、これら 3 つのクライアント間で通信する方法はありますか?
javascript - JavaScript 変数を PHP スクリプトに渡すのに問題があります
ユーザーからボタンクリックを受け取り、それらのクリック値をPHPスクリプトに渡し、MQTTブローカーに公開するJqueryを使用してWebページを設定しようとしています。ブローカーへの接続は機能しているようです。JavaScript から PHP に変数を渡す際に問題があります。私は何を間違っていますか?
これが私のJavaScriptです:
ここに私のPHPがあります:
php - MQTT PHP を使用して IBM Bluemix にサブスクライブする
PHP を使用して MQTT プロトコル経由で IBM Bluemix に接続し、IoT Foundation からのメッセージをサブスクライブしたいと考えています。私はこのコードを使用します:
しかし、ブラウザには次のメッセージが表示されます。
致命的なエラー: 167 行目の /Library/WebServer/Documents/phpMQTT/phpMQTT.php で最大実行時間が 30 秒を超えました
php - PHP MQTT サブスクライブが機能しない
Windows マシンにhttps://mosquitto.org/download/から MQTT ブローカーをインストールしました。
パブリッシュとサブスクライブにhttps://github.com/bluerhinos/phpMQTT/tree/master/examplesを使用しています。パブリッシュは期待どおりに機能しますが、サブスクライブは機能しませんでした。
なぜこれが機能しないのか理解できませんでした。リモート MQTT サーバーに接続するために MQTT ブローカーが必要ですか? phpでpublishとsubscribeメソッドを実装したい
公開:
申し込む:
エラー: サブスクライブ ヘッダーが間違っています
エラー フォーム ホスト エラー ログを取得する
編集:
コマンドラインを使用してサブスクライブスクリプトを実行しましたが、常に "eof receive going to reconnect for good measure\n" は常にfeof
関数 から true を取得することを意味します
コード:
Chrome 拡張機能を使用して発行ページをテストしました。これは、Chrome 拡張機能を使用してサブスクライブすることを意味します。正常に動作しているということは、 read socket に何か問題があることを意味します。
php - MQTT クライアント接続を常にアクティブに保つ
Pub-Sub ベースのアプリケーションでCloudMQTT
として使用しています。MQTT broker
私は を使用してpublisher
にデータを公開していCloudMQTT server
ます。送信された情報を受信するために、私の Web ページのブローカーに送信するtopic
予定です。subscribe
この手順を使用してClient
(サブスクライバー) を作成しています: https://www.cloudmqtt.com/docs-php.html
コードは次のようになります。
phpMQTT.php
ファイルは次のとおりです: https://github.com/bluerhinos/phpMQTT/blob/master/phpMQTT.php
ただし、この場合の問題は、Web ページが開いている場合にのみデータを受信することです。公開されたメッセージを常に受信するために、Web ページが開いていなくても接続を維持したいのですが、どうすればよいですか?
編集:誰かがいくつかの代替手段を推奨できる場合、サーバー上で他のテクノロジーを使用してこのサブスクリプションプロセスを処理することにオープンである可能性があります
php - 関数で使用できないオブジェクト
MQTT ブローカーのトピックにサブスクライブするアプリケーションがあります。メッセージが受信されたら、メッセージ内のデータを処理し、別のトピックで同じブローカーに戻す必要があります。PHPMQTT のライトニング ブランチは適切に管理されているため ( github repo ) 使用しています。
私のスクリプトは次のとおりです。
「net/raw」を問題なく購読できます。加工もバッチリ。それをブローカーに公開するときに問題が発生します。18 行目で開始された接続が関数で使用できず、次のエラーが発生した場合:
注意: 未定義の変数: C:\wamp64\www\sub.php の 35 行目の mqtt
Fatal error: Uncaught Error: Call to a member function publish() on null in C:\wamp64\www\sub.php:35 スタック トレース: 0 [内部関数]: {closure}(Object(Lightning\Response)) 1 C:\wamp64\www\vendor\brandonhudson\lightning\Lightning\App.php(353): call_user_func(Object(Closure), Object(Lightning\Response)) 2 C:\wamp64\www\vendor\brandonhudson\lightning\ Lightning\App.php(424): Lightning\App->message('0A') 3 C:\wamp64\www\sub.php(40): Lightning\App->listen() 4 {main} C でスロー:\wamp64\www\sub.php 35 行目
関数内で新しい接続を作成できますが、十分なはずのときに新しい接続を開いたり閉じたりしたくありません。関数内で接続を使用できるようにするにはどうすればよいですか?