Differenze tra le versioni di "Gruppo Meteo/StimaOverview"
(→MQTT) |
(→AMQP) |
||
Riga 57: | Riga 57: | ||
===== AMQP ===== | ===== AMQP ===== | ||
+ | AMQP (Advanced Message Queuing Protocol) è protocollo per | ||
+ | comunicazioni attraverso code di messaggi. Sono garantite | ||
+ | l'interoperabilità, la sicurezza, l'affidabilità, la persistenza. | ||
+ | |||
caratterizzato da: | caratterizzato da: | ||
* Amqpserver (Server AMQP) | * Amqpserver (Server AMQP) | ||
Riga 62: | Riga 66: | ||
* Queue (Nome della coda locale AMQP ) | * Queue (Nome della coda locale AMQP ) | ||
* Amqpuser (User AMQP) | * Amqpuser (User AMQP) | ||
− | * Amqppassword | + | * Amqppassword |
=== JsonRPC === | === JsonRPC === |
Versione delle 14:35, 15 giu 2015
Stima Overview
Stazione modulare per la misura di parametri ambientali.
Premesse
- Adeisce alla Rete di Monitoraggio Ambientale Partecipativo (R-MAP)
- Open hardware e open software
- al momento vengono gestiti parametri meteorologici
Concetti base
La modularità della stazione è stata ottenuta astraendo alcuni concetti e funzioni e implementandoli nei differenti moduli hardware e software.
Trasporti
Il concetto di trasporto in Stima è simile ma non rigidamente aderente ai concetti del modello ISO-OSI. Nel caso dei trasporti passivi il suo compito è fornire un canale logico-affidabile di comunicazione end-to-end per fornire servizi al soprastante livello che in Stima è JsonRPC. Nel caso dei trasporti attivi è il protocollo (Session Layer) per la pubblicazione dei dati su un server (broker).
Passivi o attivi
In pratica i trasporti "passivi" permettono di eseguire procedure remote codificate in formato json specifiche dell'implementazione Stima; quelli attivi permettono la pubblicazione su server (broker) dei messaggi aderenti allo standard R-MAP.
Passivi
Seriale
Collegamento punto a punto tramite porta seriale.
caratterizzato da:
- Baud rate
- Device
TCP/IP
Trasporto che utilizza il tcp/ip; i supporti fisici supportati sono ethernet e GSM/GPRS
caratterizzato da:
- Name (Nome risolto dal DNS)
- Ntpserver
Bluetooth
caratterizzato da:
- Bluetooth Name
NRF24
caratterizzato da:
- Node (Node ID for RF24 Network)
- Channel (Numero canale per RF24)
- Key (AES key)
- Iv
Attivi
MQTT
MQTT (Message Queue Telemetry Transport) è un protocollo publish/subscribe particolarmente leggero, adatto per la comunicazione M2M tra dispositivi con poca memoria o potenza di calcolo e server o message broker.
caratterizzato da:
- Mqttsampletime (intervallo in secondi per la pubblicazione)
- Mqttserver (MQTT server)
- Mqttuser (MQTT user)
- Mqttpassword (MQTT password)
AMQP
AMQP (Advanced Message Queuing Protocol) è protocollo per comunicazioni attraverso code di messaggi. Sono garantite l'interoperabilità, la sicurezza, l'affidabilità, la persistenza.
caratterizzato da:
- Amqpserver (Server AMQP)
- Exchange (Nome dell'exchange remoto AMQP)
- Queue (Nome della coda locale AMQP )
- Amqpuser (User AMQP)
- Amqppassword
JsonRPC
La chiamata di procedure remote in formato json è l'unico metodo per poter eseguire funzioni su un modulo dalla configurazione al campionamento dei sensori.
La documentazione delle procedure remote è disponibile qui Gruppo_Meteo/RemoteProcedure
JsonRPC over different transports
E' possibile fare richiesta di una procedura remota che a sua volta richiede una procedura remota; in questo modo è possibile utilizzare due trasporti differenti e usare un modulo come gateway. Ad esempio il modulo base non dispone al momento del trasporto radio RF24 ma puo' richiedere a un modulo master tramite trasporto seriale o TCP/IP di eseguire una procedura remota su un modulo satellite raggiungibile tramite trasporto RF24. Queste funzionalità sono ampiamente da testare.