Leggere messaggi da dispositivo a cloud dall'endpoint predefinito

Per impostazione predefinita, i messaggi vengono instradati all'endpoint per servizi predefinito (messaggi/eventi) compatibile con Hub eventi. Questo endpoint è attualmente esposto solo con il protocollo AMQP sulla porta 5671. Un hub IoT espone le proprietà seguenti per consentire il controllo dell'endpoint di messaggistica predefinito messages/events, compatibile con Hub eventi.

Proprietà Descrizione
Numero di partizioni Impostare questa proprietà in fase di creazione per definire il numero di partizioni per l'inserimento di eventi da dispositivo a cloud.
Tempo di conservazione Questa proprietà specifica per quanti giorni i messaggi vengono conservati dall'hub IoT. Il valore predefinito è un giorno, ma può essere aumentato a sette giorni.

L'hub IoT consente inoltre di gestire i gruppi di consumer nell'endpoint di ricezione predefinito da dispositivo a cloud.

Per impostazione predefinita, tutti i messaggi che non corrispondono in modo esplicito a una regola di routing vengono scritti nell'endpoint predefinito. Se si disattiva questa route di fallback, i messaggi che non corrispondono in modo esplicito a una regola di routing verranno eliminati.

È possibile modificare il tempo di conservazione a livello di codice con le API del provider di risorse dell'hub IoT di Azure oppure usando il portale di Azure.

L'hub IoT espone l'endpoint messaggi/eventi predefinito per permettere ai servizi back-end di leggere i messaggi da dispositivo a cloud ricevuti dall'hub. L'endpoint è compatibile con Hub eventi e consente quindi di usare uno dei meccanismi supportati da tale servizio per la lettura dei messaggi.

Eseguire la lettura dall'endpoint predefinito

Quando si usa Azure Service Bus SDK per .NET o Hub eventi - Host processore di eventi, è possibile usare qualsiasi stringa di connessione dell'hub IoT con le autorizzazioni corrette. Usare quindi messaggi/eventi come nome dell'hub eventi.

Quando si usano gli SDK o integrazioni del prodotto non compatibili con l'hub IoT, è necessario recuperare un endpoint e un nome compatibili con Hub eventi dalle impostazioni dell'hub IoT nel portale di Azure:

  1. Nel pannello dell'hub IoT fare clic su Endpoint.
  2. Nella sezione Endpoint predefiniti fare clic su Eventi. Il pannello contiene i valori seguenti: Endpoint compatibile con l'hub eventi, Nome compatibile con l'hub eventi, Partizioni, Tempo di conservazione e Gruppi di consumer.

    Impostazioni da dispositivo a cloud

L'SDK dell'hub IoT richiede il nome dell'endpoint dell'hub IoT, ossia messages/events come mostrato nel pannello Endpoint.

Se l'SDK usato richiede un valore Nome host o Spazio dei nomi, rimuovere lo schema da Endpoint compatibile con l'hub eventi. Ad esempio, se l'endpoint compatibile con l'hub eventi è sb://iothub-ns-myiothub-1234.servicebus.windows.net/, il Nome host sarà iothub-ns-myiothub-1234.servicebus.windows.net e lo Spazio dei nomi sarà iothub-ns-myiothub-1234.

È quindi possibile usare qualsiasi criterio di accesso condiviso con autorizzazioni ServiceConnect per connettersi all'hub eventi specificato.

Se si deve compilare una stringa di connessione dell'hub eventi con le informazioni precedenti, è possibile usare il modello seguente:

Endpoint={Event Hub-compatible endpoint};SharedAccessKeyName={iot hub policy name};SharedAccessKey={iot hub policy key}

Di seguito sono elencati gli SDK e le integrazioni che è possibile usare con gli endpoint compatibili con l'hub eventi esposti dall'hub IoT:

Passaggi successivi

Per altre informazioni sugli endpoint dell'hub IoT, vedere Endpoint dell'hub IoT.

Le esercitazioni introduttive illustrano come inviare messaggi da dispositivo a cloud da dispositivi simulati e leggere i messaggi dall'endpoint predefinito. Per altri dettagli, vedere l'esercitazione Elaborare messaggi da dispositivo a cloud dell'hub IoT usando route.

Per instradare i messaggi da dispositivo a cloud verso endpoint personalizzati, vedere Use message routes and custom endpoints for device-to-cloud messages (Usare route messaggi ed endpoint personalizzati per i messaggi da dispositivo a cloud).