こちらの記事ではHIVEMQ CLOUDの導入方法を紹介します。また、記事の中で使用するのは普通のラスパイ4です。
さ、FAを楽しもう!

HiveMQ Cloud?
HiveMQは、MQTTベースのメッセージングプラットフォームで、世界中の企業において、接続されたIoTデバイスとの間で高速かつ信頼性が高く安全なデータ転送を保証します。
またHiveMQ Cloudは、信頼性と拡張性に優れたIoTデバイス接続をシンプルにする、フルマネージドのクラウドネイティブIoTメッセージングプラットフォームです:
- わずか数回のクリックでクラスターを作成し、IoTデバイスを接続できます。インストールやサーバー管理は不要です。
- 運用リスクを低減する。大規模でミッションクリティカルなMQTTブローカークラスタを長年管理してきたHiveMQの専門家が、HiveMQ Cloudを運用します。
- 優れたクラスタリング技術による自動スケーリングで需要に柔軟に対応し、すべてのIoTデバイスに高可用性と信頼性を保証します。
- 基盤から構築されたエンタープライズグレードのセキュリティ。異なるデータセンター間でのレプリケーション、TLS通信、デバイス認証/認可、24時間365日のプロフェッショナルサポートを備えた専用インフラ。
- ベンダーロックインなしの簡単な接続と統合。HiveMQ CloudはMQTT仕様に100%準拠しています。
- 個別のユースケースとブランディングをサポートするカスタムクラスターURL。
- 透明性のある価格設定。複雑なサービス計算や隠れたコストはありません。

今すぐ無料で始めよう!
HIVEMQ Cloudを使用するには最初にアカウントの登録が必要で、下記のサイトにアクセスし、Start Freeをクリックします。

HIVE MQ CLOUDにある”SIんgUP FREE Now”をクリックします。

GOOGLE・LinkedINもしくはGithubからアカウントに登録しましょう。

Done!次は個人情報を入れておきましょう。

これで登録完了しました。

無料枠を使用する
今回の記事では無料枠を使用しますので、”Create Serverless Cluster”をクリックしてください。
- Basic MQTT broker features.
- Shared MQTT platform.
- 100 MQTT device connections at no cost to you
- No credit card required. Cancel anytime.
- 10 GB data traffic per month.
- Full support for MQTT 3.1, 3.1.1, and 5.0
- MQTT over TLS/SSL
- Basic authorization rules
- WebSocket support

Done!新しい無料のClusterを作成しました。

Clusterの右側にはRunningというICONがついています。

Connection Credentials作成
先ほど作成した無料枠をクリックします。



Pythonサンプルコードーー
先ほど作成した無料枠をクリックします。

Pythonをクリックすると、サンプルコードが公開されます。

こちらはScriptです。
| import time import paho.mqtt.client as paho from paho import mqtt # setting callbacks for different events to see if it works, print the message etc. def on_connect(client, userdata, flags, rc, properties=None): print(“CONNACK received with code %s.” % rc) # with this callback you can see if your publish was successful def on_publish(client, userdata, mid, properties=None): print(“mid: ” + str(mid)) # print which topic was subscribed to def on_subscribe(client, userdata, mid, granted_qos, properties=None): print(“Subscribed: ” + str(mid) + ” ” + str(granted_qos)) # print message, useful for checking if it was successful def on_message(client, userdata, msg): print(msg.topic + ” ” + str(msg.qos) + ” ” + str(msg.payload)) # using MQTT version 5 here, for 3.1.1: MQTTv311, 3.1: MQTTv31 # userdata is user defined data of any type, updated by user_data_set() # client_id is the given name of the client client = paho.Client(client_id=””, userdata=None, protocol=paho.MQTTv5) client.on_connect = on_connect # enable TLS for secure connection client.tls_set(tls_version=mqtt.client.ssl.PROTOCOL_TLS) # set username and password client.username_pw_set(“username”, “password”) # connect to HiveMQ Cloud on port 8883 (default for MQTT) client.connect(“url”, 8883) # setting callbacks, use separate functions like above for better visibility client.on_subscribe = on_subscribe client.on_message = on_message client.on_publish = on_publish # subscribe to all topics of encyclopedia by using the wildcard “#” client.subscribe(“encyclopedia/#”, qos=1) # a single publish, this can also be done in loops, etc. client.publish(“encyclopedia/temperature”, payload=”hot”, qos=1) # loop_forever for simplicity, here you need to stop the loop manually # you can also use loop_start and loop_stop client.loop_forever() |
結果
Web Clientをクリックし、Python Scriptの実行結果を確認していきましょう。

User NameとPasswordに先程登録したConnection Credentials情報を入力します。

次はPython Scriptを実行すると、hotというメッセージが取得できました。
