Visualizza i messaggi MQTT con il AWS IoT client MQTT - AWS IoT Core

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Visualizza i messaggi MQTT con il AWS IoT client MQTT

Questa sezione descrive come utilizzare il client di test AWS IoT MQTT nella AWS IoT console per guardare i messaggi MQTT inviati e ricevuti da. AWS IoT L'esempio utilizzato in questa sezione si riferisce agli esempi utilizzati in Guida introduttiva con AWS IoT Core; tuttavia, è possibile sostituire il topicName utilizzato negli esempi con qualsiasi nome argomento o filtro argomento utilizzato dalla tua soluzione IoT.

I dispositivi pubblicano messaggi MQTT identificati da argomenti a cui comunicare il loro stato e AWS IoT pubblicano messaggi MQTT per informare i dispositivi e le app di modifiche ed eventi. AWS IoTÈ possibile utilizzare il client MQTT per sottoscrivere questi argomenti e controllare i messaggi mentre si verificano. È inoltre possibile utilizzare il client di test MQTT per pubblicare messaggi MQTT su dispositivi e servizi sottoscritti nel proprio. Account AWS

Visualizzazione dei messaggi MQTT nel client MQTT

Per visualizzare i messaggi MQTT nel client di test MQTT
  1. Nella console AWS IoT e, nel menu a sinistra, scegli Test quindi scegli MQTT test client (Client MQTT di test).

    Scegliete il client di test MQTT dal menu della console nella barra di navigazione a sinistra.
  2. Nella scheda Subscribe to a topic (Sottoscrizione a un argomento), inserisci il topicName per iscriversi all'argomento in cui il dispositivo pubblica. Per l'app di esempio introduttiva, effettua la sottoscrizione a #, che sottoscrive tutti gli argomenti dei messaggi.

    Continuando con l'esempio introduttivo, nella scheda Subscribe to a topic (Sottoscrizione a un argomento), nel campo Topic filter (Filtro di argomenti), immetti #, quindi scegli Subscribe (Sottoscrizione).

    La scheda Iscriviti a un argomento.

    La pagina di log dei messaggi dell'argomento # si apre e # viene visualizzato nell'elenco Subscriptions (Abbonamenti). Se il dispositivo in cui hai Configurazione del dispositivo configurato esegue il programma di esempio, dovresti vedere i messaggi a cui invia i messaggi AWS IoT nel registro #. Le voci del registro dei messaggi verranno visualizzate sotto la sezione Pubblica quando i messaggi con l'argomento sottoscritto vengono ricevuti da AWS IoT.

    La sezione per mostrare l'argomento è stata sottoscritta con successo.
  3. Sulla pagina log dei messaggi #, puoi pubblicare messaggi in un argomento, ma sarà necessario specificare il nome dell'argomento. Non è possibile pubblicare nell'argomento #.

    I messaggi pubblicati per gli argomenti sottoscritti vengono visualizzati nel registro messaggi quando vengono ricevuti, con il messaggio più recente all'inizio.

Risoluzione dei problemi relativi ai messaggi MQTT

Usa il filtro per argomenti jolly

Se i messaggi non vengono visualizzati come previsto, prova a sottoscrivere un argomento con caratteri jolly come descritto in Filtri argomento. Il filtro argomento jolly multi-livello MQTT è il segno hash o cancelletto ( # ) e può essere utilizzato come filtro per argomenti nel campo Subscription topic (Argomento sottoscrizione).

Sottoscrizione alla filtro argomenti # sottoscrive ogni argomento ricevuto dal broker di messaggi. È possibile restringere il filtro sostituendo gli elementi del percorso del filtro dell'argomento con un carattere jolly a più livelli # o il carattere jolly a livello singolo '+'.

Quando utilizzare i caratteri jolly in un filtro argomento
  • Il carattere jolly multilivello deve essere l'ultimo carattere nel filtro argomento.

  • Il percorso del filtro argomento può avere un solo carattere jolly a livello singolo per livello di argomento.

Ad esempio:

Filtro di argomenti

Visualizza i messaggi con

#

Nome di qualsiasi argomento

topic_1/#

Un nome di argomento che inizia con topic_1/

topic_1/level_2/#

Un nome di argomento che inizia con topic_1/level_2/

topic_1/+/level_3

Un nome di argomento che inizia con topic_1/, termina con /level_3 e ha un elemento di qualsiasi valore in mezzo.

Per ulteriori informazioni sui filtri argomento, consulta Filtri argomento.

Controlla la presenza di errori di nome dell'argomento

I nomi degli argomenti e i filtri degli argomenti MQTT distinguono tra maiuscole e minuscole. Ad esempio, se il dispositivo pubblica messaggi su Topic_1 (con la lettera maiuscola T) invece di topic_1, l'argomento a cui hai effettuato la sottoscrizione e i relativi messaggi non verranno visualizzato nel client di test MQTT. La sottoscrizione filtro di argomento del carattere jolly, tuttavia, mostrerebbe che il dispositivo sta pubblicando messaggi e si potrebbe vedere che utilizzava un nome di argomento che non era quello che ti aspettavi.

Pubblicazione di messaggi MQTT dal client MQTT

Per pubblicare un messaggio in un argomento MQTT
  1. Nella pagina del client di test MQTT, nella scheda Publish to a topic (Pubblicazione in un argomento), nel campo Topic name (Nome argomento), immetti il topicName del messaggio. Per questo esempio, utilizzare my/topic.

    Nota

    Non utilizzare informazioni di identificazione personale nei nomi degli argomenti, a prescindere che vengano utilizzati nel client di test MQTT o nell'implementazione del sistema. I nomi dell'argomento possono essere visualizzati nelle comunicazioni e nei report non crittografati.

  2. Nella finestra relativa al payload del messaggio digita il codice JSON seguente:

    { "message": "Hello, world", "clientType": "MQTT test client" }
  3. Scegli Publish (Pubblica) per pubblicare il messaggio in AWS IoT.

    Nota

    Assicurati di essere iscritto a my/topic prima di pubblicare il messaggio.

    La scheda Pubblica su un argomento.
  4. Scegli my/topic nell'elenco Subscription (Sottoscrizione) per visualizzare il messaggio. Il messaggio deve essere visualizzato nel client di test MQTT sotto la finestra di payload del messaggio di pubblicazione.

    La schermata che mostra l'argomento pubblicato è stata ricevuta.

È possibile pubblicare messaggi MQTT in altri argomenti modificando il topicName nel campo Topic name e scegliendo il tasto Publish (Pubblica).

Importante

Quando crei più abbonamenti con argomenti sovrapposti (ad esempio, probe1/temperature e probe1/#), esiste la possibilità che un singolo messaggio pubblicato su un argomento che corrisponde a entrambi gli abbonamenti venga recapitato più volte, una volta per ogni abbonamento sovrapposto.

Test delle sottoscrizioni condivise nel client MQTT

Questa sezione descrive come utilizzare il client MQTT nella AWS IoT console per guardare i messaggi AWS IoT MQTT inviati e ricevuti utilizzando gli abbonamenti condivisi. AWS IoT Sottoscrizioni condiviseconsente a più client di condividere un abbonamento a un argomento con un solo client che riceve i messaggi pubblicati su quell'argomento utilizzando una distribuzione casuale. Per simulare più client MQTT (in questo esempio, due client MQTT) che condividono lo stesso abbonamento, aprite il client AWS IoT MQTT nella AWS IoT console da più browser Web. L'esempio utilizzato in questa sezione non fa riferimento agli esempi utilizzati in Guida introduttiva con AWS IoT Core. Per ulteriori informazioni, consultare Sottoscrizioni condivise.

Per condividere una sottoscrizione a un argomento MQTT
  1. Nella Console AWS IoT, nel pannello di navigazione, scegli Test, quindi seleziona Client MQTT di test.

  2. Nella scheda Subscribe to a topic (Sottoscrizione a un argomento), inserisci il topicName per iscriversi all'argomento in cui il dispositivo pubblica. Per utilizzare sottoscrizioni condivise, effettua la sottoscrizione al filtro di argomenti di una sottoscrizione condivisa come illustrato di seguito:

    $share/{ShareName}/{TopicFilter}

    Un filtro di argomenti di esempio può essere $share/group1/topic1, che effettua la sottoscrizione all'argomento del messaggio topic1.

    La scheda che mostra come specificare un filtro per argomenti per gli abbonamenti condivisi.
  3. Apri un altro browser Web e ripeti i passaggi 1 e 2. Questa procedura simula due diversi client MQTT che condividono la stessa sottoscrizione $share/group1/topic1.

  4. Scegli un client MQTT, nella scheda Pubblicazione in un argomento, nel campo Nome argomento, immetti il topicName del messaggio. Per questo esempio, utilizzare topic1. Prova a pubblicare il messaggio alcune volte. Dall'elenco Sottoscrizioni di entrambi i client MQTT, devi essere in grado di vedere che i client ricevono il messaggio utilizzando una distribuzione casuale. In questo esempio, lo stesso messaggio "Hello from AWS IoT console" viene pubblicato tre volte. Il client MQTT a sinistra ha ricevuto il messaggio due volte e il client MQTT a destra ha ricevuto il messaggio una volta.

    Le sottoscrizioni condivise vengono condivise con due client per condividere una sottoscrizione a un argomento e solo un client riceverà i messaggi pubblicati su quell'argomento utilizzando una distribuzione casuale.