37

構築中の新しいデバイスのメッセージング プロトコルとして MQTT を使用することを検討しています。また、デバイス用の Web インターフェイスも必要です。MQTT を使用するブラウザー クライアント アプリを (追加のプラグインなしで) 実装できるかどうか知っている人はいますか?

4

8 に答える 8

16

はい、Steve-o のコメントで述べたように、websockets 経由の MQTT は非常に可能です。

現時点では2つのオプションがあります

  1. IBM の MQ 7.5 には websockets のサポートが付属しています。詳細については、こちらを参照してください。
  2. Mosquitto ブローカーには、ここで実行されている例を含む JavaScript クライアントがあります。

2 番目の質問に答えるために、lighttpd には、既存のブローカーへの転送に使用できる websockets モジュールがあります。詳細については、こちらを参照してください。

転送を行うために独自のライブラリを作成する必要のない Apache 用のものを見つけることができませんでした。

于 2013-04-16T23:01:39.640 に答える
10

hardillbs の回答を拡張するには:

現在、3 番目のオプションがあります。

HiveMQは、外部 Web サーバーを必要とせずにネイティブ WebSocket をサポートします。Eclipse Pahoの Javascript クライアントと完全に連携します。

試してみたい場合は、パブリックMQTTDashboard (内部で HiveMQ を使用) がポート 8000 で Websocket をサポートしています。

開示: 私は HiveMQ の開発者の 1 人です。

于 2013-08-23T21:12:47.970 に答える
5

IBM は、WebSocket ベースの JavaScript クライアントをリリースしました。Eclipse Paho のオープンソースです。

Git リポジトリ: http://git.eclipse.org/c/paho/org.eclipse.paho.mqtt.javascript.git/

チュートリアルはこちら。 https://www.ibm.com/developerworks/community/blogs/c565c720-fe84-4f63-873f-607d87787327/entry/how_to_prog_javascript?lang=en

于 2013-10-19T02:58:38.753 に答える
2

Apache ではありませんが、このガイドに従って mod_websocket で lighttpd をインストールできます。

http://oriolrius.cat/blog/2013/09/25/server-send-push-notifications-to-client-browser-without-polling/

しかし、@Dominikが推奨するように、使いやすさのためにHiveMQを強くお勧めします。

于 2013-11-10T22:23:26.377 に答える
2

jpmensによるブログは、websocket 機能を使用して mosquitto をセットアップするための良い出発点です。Paho に基づく彼のクライアント JavaScript コードは github にあります。

このブログ「Web サーバーと MQTT WebSockets ブローカーを同じポートで実行する方法」では、サーバー側の 2 つの方法について説明しています。

  • http構成のmosquitto
  • Apache + mod_websocket_mosquitto
于 2016-05-06T14:06:00.730 に答える
0

nodejs+ではないのはなぜsocket.ioですか?すべてのガジェットが含まれています (webscokets、pub/sub、webserver、mqtt ブローカーなど)。 SocketClusterは、もう 1 つの良い出発点です。

于 2016-05-25T16:09:10.227 に答える
0

このリンク (ダウンロード コード) は役に立ちます。ダウンロードして、このファイル mosq-mqttws31.html を変更します。埋め込まれた Java スクリプト ライブラリの代わりに、この cdn を使用します。

https://cdnjs.cloudflare.com/ajax/libs/paho-mqtt/1.0.1/mqttws31.js

クライアントのインスタンス化は client = new Paho.MQTT.Client("test.mosquitto.org", 8080,"myclien256tiddd_" + parseInt(Math.random() * 100, 10));

于 2016-12-10T02:04:28.673 に答える