Indicazioni sulle comunicazioni da cloud a dispositivo
L'hub IoT fornisce tre opzioni per le app per dispositivo che consentono di esporre le funzionalità a un'app back-end:
I metodi diretti servono per le comunicazioni che richiedono una conferma immediata del risultato. I metodi diretti vengono spesso usati per il controllo interattivo dei dispositivi, ad esempio l'accensione di una ventola.
Proprietà desiderate del dispositivo gemello, per comandi a esecuzione prolungata che consentono di impostare uno stato specifico per il dispositivo. ad esempio per impostare l'intervallo di invio dei dati di telemetria su 30 minuti.
Messaggi da cloud a dispositivo, per le notifiche unidirezionali verso l'app per dispositivo.
Per informazioni su come Azure Plug and Play IoT usa queste opzioni per controllare i dispositivi Plug and Play IoT, vedere Plug and Play IoT guida per sviluppatori di servizi.
Nota
Le funzionalità descritte in questo articolo sono disponibili solo nel livello Standard dell'hub IoT. Per altre informazioni sui livelli di hub IoT basic e standard/gratuiti, vedere Scegliere il livello di hub IoT appropriato per la soluzione.
Ecco un confronto dettagliato delle diverse opzioni di comunicazione da cloud a dispositivo.
Categorie | Metodi diretti | Proprietà desiderate del dispositivo gemello | Messaggi da cloud a dispositivo |
---|---|---|---|
Scenario | Comandi che richiedono una conferma immediata, ad esempio l'accensione di una ventola. | Comandi a esecuzione prolungata che consentono di impostare uno stato specifico per il dispositivo, ad esempio per impostare l'intervallo di invio dei dati di telemetria su 30 minuti. | Notifiche unidirezionali verso l'app per dispositivo. |
Flusso di dati | Bidirezionale. L'app per dispositivo può rispondere immediatamente al metodo. Il back-end della soluzione riceve il risultato insieme alla richiesta. | Unidirezionale. L'app per dispositivo riceve una notifica quando la proprietà viene modificata. | Unidirezionale. L'app per dispositivo riceve il messaggio. |
Durabilità | I dispositivi disconnessi non vengono contattati. Il back-end della soluzione riceve una notifica che indica che il dispositivo non è connesso. | I valori delle proprietà vengono conservati nel dispositivo gemello. Il dispositivo li leggerà alla riconnessione successiva. I valori delle proprietà possono essere recuperati con il linguaggio di query dell'hub IoT. | I messaggi possono essere conservati dall'hub IoT per un massimo di 48 ore. |
Target | Singolo dispositivo che usa deviceId o più dispositivi che usano jobs. | Singolo dispositivo che usa deviceId o più dispositivi che usano jobs. | Singolo dispositivo in base a deviceId. |
Dimensione | La dimensione massima del payload del metodo diretto è 128 KB per la richiesta e 128 KB per la risposta. | Le dimensioni massime per le proprietà desiderate sono 32 KB. | Fino a 64 KB per i messaggi. |
Frequenza | Elevato. Per altre informazioni, vedere i limiti dell'hub IoT. | Medio. Per altre informazioni, vedere i limiti dell'hub IoT. | Basso. Per altre informazioni, vedere i limiti dell'hub IoT. |
Protocollo | Disponibile tramite MQTT o AMQP. | Disponibile tramite MQTT o AMQP. | Disponibile in tutti i protocolli. Il dispositivo deve eseguire il polling quando usa HTTPS. |
Informazioni su come usare i metodi diretti, le proprietà desiderate e messaggi da cloud a dispositivo nelle esercitazioni seguenti: