Yeni: Yapay zekâ güvenlik duvarı tüm platformu izliyor ve her olayı sade bir dille açıklıyor. Nasıl çalıştığını görün

Eğitimde broker = 192.168.x.x yazıyor – Hermetry için hangi adresi gireceğim?

Eğitimde broker = 192.168.x.x yazıyor – Hermetry için hangi adresi gireceğim?

Çözüldü 4 3

Yapay zekâ tarafından English dilinden çevrildi ·

Küçük bir lojistik girişiminin kurucusuyum, mühendis DEĞİLİM; bir yatırımcı toplantısından önce bir proof of concept (kavram kanıtı) hazırlamaya çalışıyorum. Bir frigorifik römork için sıcaklık sensörlü bir Raspberry Pi 4.Bir blog yazısındaki paho-mqtt adımlarını izledim. Orada broker = "192.168.1.50" ve port = 1883 yazıyor. Hermetry’nin MQTT IP adresi nedir? Bir cihaz oluşturup erişim belirtecini kopyaladım ama hiçbir yerde IP bulamıyorum. Cihaz sayfasındaki ana bilgisayar adına ping attığımda dönen IP’yi denedim ve on_connect rc=5 hatasını aldım. Ana bilgisayar adıyla birlikte port 1883’ü de denedim, o da rc 5 verdi.

Still waiting for the gateway to reconnect.
♥ 0

Yapay zekâ tarafından English dilinden çevrildi ·

Cihazdaki Bağlantı ayrıntıları kartı tam olarak neyi gösteriyor? Ana bilgisayar (host) ve port?

♥ 0

Yapay zekâ tarafından English dilinden çevrildi ·

Bir ana bilgisayar adı ve 8883. Yani bloktaki 1883 bunun için yanlış mı?

Still waiting for the gateway to reconnect.
♥ 2

Yapay zekâ tarafından English dilinden çevrildi ·

Evet. O blog, kendi ev ağınızdaki bir broker için hazırlanmış, bu yüzden 192.168 adresi var. Hermetry için hiç IP kullanmanız gerekmiyor: Connection details kartındaki host adıyla, 8883 portunda TLS üzerinden bağlanın. TLS ad bilgisini (SNI) gerektirir, bu yüzden ping attığınız IP başarısız olur; düz 1883 ise profil düz MQTT’ye izin vermediği sürece reddedilir, varsayılan olarak da izin vermez. rc=5 “not authorised” (yetkisiz) anlamına gelir; asıl neden cihazın Log sekmesinde yer alıyor, bir bakmaya değer.

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)

paho 2.x ile bunun yerine mqtt.Client(mqtt.CallbackAPIVersion.VERSION2, client_id="reefer-01") kullanmanız gerekir.

Timestamps in UTC or it didn't happen.
Kabul edilen çözüm♥ 2

Yapay zekâ tarafından English dilinden çevrildi ·

Bağlandı, cihaz sayfasında -18.2 görünüyor. Günlük sekmesi 1883 denemesinin neden başarısız olduğunu söylemişti (düz port izinli değil), sadece bunun var olduğunu bilmiyordum. Teşekkürler, demo perşembe günü.

Still waiting for the gateway to reconnect.
♥ 1
5 yazı görüntüleniyor – 1 ile 5 arası (toplam 5)
  • Bu konuyu yanıtlamak için giriş yapmış olmalısınız.

Sohbete katılın

Soru sormak ve yanıtlamak, yararlı gönderileri beğenmek ve sorununuzu çözen yanıtı işaretlemek için oturum açın. Her katkı puan ve seviye kazandırır.

Paylaş