Ruuvi Gateway -reitittimessä on sisäänrakennettuna mahdollisuus välittää sen kuulemien Bluetooth LE -laitteiden viestit kustomoidulle HTTP- tai MQTT-palvelimelle. Tässä tukiartikkelissa keskitymme Ruuvi Gateway -reittittimen MQTT-ominaisuuden käyttöönottoon ja sen hyödyntämiseen omassa IoT-ympäristössäsi.
Mikä on MQTT?
Message Queuing Telemetry Transport (MQTT) on kevyt ja tehokas viestintäprotokolla, joka on suunniteltu erityisesti tyypillisesti ongelmallisiin ympäristöihin, joissa on matala kapasiteetti ja korkea latenssi. MQTT soveltuu hyvin käytettäväksi laitteissa, joissa on vähän prosessointitehoa ja muistia, ja soveltuu tämän vuoksi erinomaisesti IoT-skenaarioihin, joissa tämä kevyt ja tehokas viestintäprotokolla on omimmillaan. Protokolla mahdollistaa eri kapasiteetin omaavien laitteiden välisen kommunikoinnin ja on siksi suosittu valinta älykoteihin, teollisuuden automaatioon ja muihin IoT-ratkaisuihin.
MQTT hyödyntää julkaise/tilaa -tyyppistä viestintämallia. Tämän mallin mukaisesti laitteet (asiakasohjelmat) kommunikoivat keskuksen kautta, jota kutsutaan välittäjäksi. Asiakasohjelmat voivat julkaista viestejä tiettyjen aiheiden alle, joista toiset näitä aiheita seuraavat asiakasohjelmat poimivat viestit. Tämä tehokas toimintamalli tukee erityisesti skaalattavuutta ja joustavuutta.
Protokollassa on mahdollista käyttää valinnaisia QoS-tasoja käytettävän verkon luotettavuuden ja sovelluksen vaatimusten mukaisesti. MQTT tukee myös ns. säilytettäviä viestejä, jonka avulla varmistetaan, että jokaisen aiheen uudet tilaajat saavat aina viimeisimmän onnistuneesti välitetyn viestin vahvistettuaan aiheen tilauksen.
MQTT:n käyttöön otto Ruuvi Gateway -reitittimessä
Ruuvi Gateway mahdollista tietojen lähettämiseen useaan kohteeseen samanaikaisesti. Vaihtoehtoina ovat Ruuvi Cloud -pilvipalvelu, sekä kolmansien osapuolten HTTP(S)- ja MQTT(S) palvelimet. Näiden käyttöönotto on helppoa Ruuvi Gateway -reitittimen ohjatun käyttöönoton avulla.
Ruuvi Gateway -reitittimen ominaisuuksista puhuttaessa on tärkeää huomata, että reittimellä on mahdollista kuunnella itse asiassa kaikkien Bluetooth LE -yhteensopivien laitteiden lähettämiä viestejä. Tämän ominaisuuden voi ottaa käyttöön Bluetooth-skannaus -sivulla Ruuvi Gatewayn ohjatussa käyttöönotossa. Tiedot on mahdollista sitten välittää eteenpäin HTTP(S) ja/tai MQTT(S) -kohteisiin. Voit esimerkiksi käyttää Ruuvi Gateway -reititintä muiden kuin Ruuvin valmistamien antureiden viestien tai muiden Bluetooth LE -yhteensopivien laitteiden viestien välittämiseen valitsemaasi kohteeseen. Tämä mahdollistaa Ruuvi Gateway -reitittimen käytön laajalti erilaisissa IoT-ratkaisuissa. Ruuvi Cloud -pilvipalvelussa hyödynnetään ainoastaan Ruuvin valmistamien laitteiden lähettämiä anturitietoja.
Siirry Ruuvi Gateway -reitittimen ohjatun käyttöönoton Pilvipalveluasetukset-sivulle ja valitse Käytä Ruuvi Cloudia ja/tai vaihtoehtoista palvelinta kun haluat muokata reitittimen MQTT-asetuksia.
Valitse kohde ja muokkaa tiedostomuotoon liittyviä asetuksia
Ruuvi Gateway -reitittimen MQTT-ominaisuus tukee tietojen välittämistä SSL-salattuihin tai salaamattomiin kohteisiin. Kun valitset kuljetustyypin valittavasta listasta, URL-osoitteen etuliite ja käytettävä portti muuttuvat oletuksen mukaiseksi automaattisesti.
Anna käyttäjänimi ja salasana, mikäli käyttämäsi palvelu käyttää autentikointia. Tietyissä ympäristöissä, kuten AWS, on pakollista täyttää myös asiakasohjelman nimi annettuun kenttään.
Ruuvi Gateway -reititin lähettää oletuksena tiedot raakamuodossa MQTT(S)-kohteeseen, mutta voit valita myös dekoodatun tai molempien muotojen lähettämisen valitsemalla sinulle sopivimman vaihtoehdon luettelosta. Tarkasta mahdollisesti konfiguroinnissa tarvittavat lisätiedot käyttämäsi MQTT-välittäjän dokumentaatiosta.
Ruuvi Gateway -reitittimellä on oma oletuslähetyväli, jonka mukaisesti tiedot välitetään välittömästi eteenpäin reitittimeltä, mutta voit halutessasi asettaa myös oman lähetysvälin tarpeesi mukaan. Tietyissä Ruuvi Gateway -asennuskohteissa voi olla hyödyllistä käyttää harvempaa lähetysväliä, mikäli on tarpeellista rajoittaa Ruuvi Gateway -reitittimen viestintä tietyn datakapasiteetin rajoihin.
Aiheen etuliitteet ja säilytettävät viestit
MQTT-protokollassa on mahdollista käyttää myös ns. säilytettyjä viestejä, joita Ruuvi Gateway -reititin välittää MQTT-välittäjälle. MQTT asiakasohjelmissa on mahdollista tilata tiettyjä välittäjältä saatavia aiheita. Aiheiden käyttäminen parantaa tietojen keräämistä ja jatkokäsittelyä.
Säilytetty viesti on viimeisin onnistuneesti välittäjän vastaanottama viesti tietyn aiheen alla. Säilytetty viesti lähetetään välittömästi tilaajalle tämän tilattua aiheen asiakasohjelmassa. Ruuvi Gateway -reitittimessä säilytetyt viestit lähetetään oletuksena, ja niitä käytetään Ruuvi Gateway -reitittimen online/offline-tilan viestittämiseen. Voit ottaa ominaisuuden myös halutessasi pois käytöstä.
Lisäturvaa SSL-sertifikaatilla
Voit myös käyttää SSL-sertifikaatteja (asiakassertifikaattia, yksityistä avainta ja palvelinsertifikaattia) MQTT-palvelimen konfiguroinnissa. Tämä ominaisuus mahdollistaa palvelimen ja asiakasohjelman välisen kommunikaatiokanavan salauksen. Oman palvelimen SSL-sertifikaatin käyttämisen avulla voit käyttää muiden, kuin julkisten salausavaimia myöntävien tahojen (CA) myöntämiä salausavaimia MQTT-palvelimellasi.
Yksityinen avain ja SSL-sertifikaatit voidaan helposti ladata konfiguraatioosi ohjatun käyttöönoton yhteydessä.
Kannattaako MQTT-protokollaa käyttää Ruuvi Cloud -pilvipalvelun rinnalla?
Ruuvi Cloud -pilvipalvelu yhdessä Ruuvi Gateway -reitittimen kanssa muodostavat monipuolisen etävalvontaratkaisun, joka sopii hyvin yksityisten käyttäjien ja yritysten tarpeisiin.
Ruuvi Gateway -reitittimessä olevan MQTT-viestintäprotokollan avulla voit laajentaa Ruuvi-ympäristöstä saatavien tietojen käsittely- ja hyödyntämismahdollisuksia joustavasti. MQTT:n käyttäminen on erityisesti kätevää silloin, kun nykyisessä IoT-ympäristössäsi hyödynnetään jo olemassa olevaa MQTT-ratkaisua.
Yhteenveto
Ruuvi Gateway -reitittimessä olevan MQTT:n avulla välität Ruuvi Gateway -reitittimen keräämät tiedot MQTT-protokollaa hyödyntävien kolmansien osapuolten palvelimille. Ruuvi Gateway -reitittimen ohjatun käyttöönoton avulla lisäät Ruuvi Gateway -reitittimen osaksi MQTT-ratkaisuasi vaivatta ja nopeasti.