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

Cihazım telemetri verilerini hangi MQTT konusuna yayınlamalı?

Cihazım telemetri verilerini hangi MQTT konusuna yayınlamalı?

1 2

Yapay zekâ tarafından English dilinden çevrildi ·

Küçük bir ESP32 sensörüm var ve MQTT üzerinden sıcaklık ve nem verilerini Hermetry’ye göndermek istiyorum. Hangi broker adresini, kimlik bilgilerini ve konuyu kullanmalıyım ve JSON yükü nasıl görünüyor?

Edge gateways all day.
♥ 0

Yapay zekâ tarafından English dilinden çevrildi ·

Bağlantı

  • Host: cihazın Connection details kartında gösterilen broker host adresini kullanın. Bu adresi REST API üzerinden de okuyabilirsiniz: GET /api/iot/devices/{deviceId}/connection çağrısı MQTT host ve port bilgisini, HTTPS temel adresini ve topic’leri döndürür.
  • Port: 8883 (TLS) kullanın.
    • Düz 1883 portu yalnızca cihaz profilinde Plain MQTT etkinleştirilmişse çalışır.
    • Bu ayar varsayılan olarak kapalıdır; birisi etkinleştirmedikçe 1883 üzerinden yapılan giriş reddedilir.
  • Protokol: MQTT 3.1.1. MQTT 5 CONNECT isteği CONNACK 1 ile reddedilir.
  • Oturum ayarları: clean session = true gönderin ve MQTT keepalive kullanın.
  • TLS:
    • En düşük TLS 1.2, tercihen 1.3.
    • SNI gereklidir, bu yüzden IP adresi yerine host adıyla bağlanın.
    • Sunucu sertifikasını normal CA paketinize ve host adına göre doğrulayın.
    • ESP32 gibi küçük cihazlar 4 KB TLS kayıtları isteyebilir (max_fragment_length).

Kimlik bilgileri (erişim belirteci, varsayılan giriş)

  • Client ID: geçerli herhangi bir ID: A–Z a–z 0–9 . _ : - karakterlerinden oluşan 1–64 karakter
  • Username: cihazın erişim belirteci
  • Password: boş

Kullanıcı adı olmadan yapılan CONNECT isteği reddedilir. Cihaz POST /api/iot/devices ile oluşturulduğunda erişim belirteci yalnızca bir kez döndürülür, bu yüzden o anda saklayın.TopicTelemetriyi v1/telemetry topic’ine yayınlayın. v1/ altında bilinen bir topic olmayan diğer her şey reddedilir. Bir dakika içinde üç reddedilen topic oturumu kapatır.PayloadBu biçimlerin herhangi biri çalışır:

  • Düz bir nesne:
{"temperature": 21.5, "humidity": 40}
  • Milisaniye cinsinden zaman damgası içeren bir nesne:
{"ts": 1759572000000, "values": {"temperature": 21.5, "humidity": 40}}
  • Yukarıdaki biçimlerden birinin dizisi.

Bağlantı reddedilirse

  • 4 (hatalı kullanıcı adı veya parola): En az 5 dakika bekleyin
  • 5 (yetkisiz): Uzun bekleme programını uygulayın

5 kodunun arkasındaki neden cihaza gönderilmez. Cihazın Log kaydına yazılır.Kaynaklar

Belgelerden ve çözülmüş konulardan YZ tarafından yazıldı. Sorununuzu çözdüyse çözüm olarak işaretleyin; çözmediyse ekip sizinle ilgilenecek.

♥ 0
2 yazı görüntüleniyor – 1 ile 2 arası (toplam 2)
  • 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ş