Mosquitto: MQTT temų supratimas

Ši dokumentacija yra Pradžia vadovo dalis. Visą vadovą rasite čia: Kaip pradėti naudotis Mosquitto.

👋 Sveiki atvykę į Stackhero dokumentaciją!

Stackhero siūlo paruoštą naudoti Mosquitto MQTT cloud sprendimą, kuris suteikia daugybę privalumų, įskaitant:

  • Neriboti žinučių mainai ir perdavimai.
  • Neribota įrenginių autentifikacija per išorinę API.
  • Pažangios ACL temos, vartotojams ir veiksmams.
  • Pritaikomas domeno vardas apsaugotas HTTPS (pavyzdžiui, https://mqtt.jusu-imone.com).
  • Lengvi atnaujinimai vienu paspaudimu.
  • Optimali veikla ir tvirta sauga naudojant privačią ir dedikuotą VM.

Taupykite laiką ir supaprastinkite savo gyvenimą: tereikia 5 minučių išbandyti Stackhero Mosquitto MQTT cloud hosting sprendimą!

MQTT organizuoja komunikaciją į "temas", kurios veikia kaip kanalai duomenų publikavimui ir prenumeravimui. Įrenginiai publikuoja pranešimus į konkrečias temas arba jas prenumeruoja, kad gautų aktualius atnaujinimus.

MQTT temos yra jautrios didžiosioms ir mažosioms raidėms, turi būti sudarytos iš UTF-8 simbolių ir reikalauja bent vieno simbolio. Hierarchija temose apibrėžiama naudojant pasvirąjį brūkšnį (/).

Štai pavyzdinė IoT įrenginių, renkančių temperatūros ir drėgmės duomenis, konfigūracija, identifikuojama pagal jų MAC adresus:

  • Įrenginiui su MAC adresu 00:00:00:00:00:00:

    • Temperatūra: devices/00:00:00:00:00:00/temperature
    • Drėgmė: devices/00:00:00:00:00:00/humidity
  • Įrenginiui su MAC adresu 11:11:11:11:11:11:

    • Temperatūra: devices/11:11:11:11:11:11/temperature
    • Drėgmė: devices/11:11:11:11:11:11/humidity

Programos gali prenumeruoti konkrečią temą, pavyzdžiui, devices/00:00:00:00:00:00/temperature, kad gautų duomenis iš atitinkamo IoT įrenginio.

MQTT palaiko pakaitos simbolius efektyviam temų valdymui:

  • Pakaitos simbolis + atitinka vieną lygį temų hierarchijoje. Pavyzdžiui, prenumeruojant devices/+/temperature gaunamos temos kaip devices/1/temperature, bet ne devices/1/2/temperature.

  • Pakaitos simbolis # atitinka kelis lygius. Pavyzdžiui, devices/# atitinka tokias temas kaip devices/1/temperature, devices/2/humidity ir devices/1/2/somethingElse.