Nouveau : le pare-feu IA surveille toute la plateforme et explique chaque incident en termes simples. Découvrez comment ça marche

Réponse à : Le tutoriel indique broker = 192.168.x.x – quelle adresse dois-je mettre pour Hermetry ?

Traduit de English par IA ·

Oui. Ce blog concerne un broker sur votre propre réseau domestique, d’où l’adresse 192.168. Pour Hermetry, vous ne devez utiliser aucune IP : connectez-vous avec le nom d’hôte de la carte Connection details, TLS sur le port 8883. TLS nécessite le nom (SNI), donc l’IP testée par ping échoue, et le port 1883 non chiffré est refusé, sauf si le profil autorise le MQTT en clair, ce qui n’est pas le cas par défaut. rc=5 signifie « not authorised », et la raison réelle apparaît dans l’onglet Log de l’appareil, ça vaut le coup d’y jeter un œil.

import ssl, json, paho.mqtt.client as mqtt

HOST = "<host from Connection details>"
TOKEN = "<access token>"

c = mqtt.Client(client_id="reefer-01")
c.username_pw_set(TOKEN)                  # token as username, no password
c.tls_set(cert_reqs=ssl.CERT_REQUIRED)    # normal public CA bundle
c.connect(HOST, 8883, keepalive=60)
c.loop_start()
c.publish("v1/telemetry", json.dumps({"temperature": -18.2}), qos=1)

Avec paho 2.x, il faut plutôt utiliser mqtt.Client(mqtt.CallbackAPIVersion.VERSION2, client_id="reefer-01").

Timestamps in UTC or it didn't happen.
Solution acceptée♥ 2