Lesen von Nachrichten, die von Geräten an die Cloud gesendet werden, vom integrierten Endpunkt
Standardmäßig werden Nachrichten an den integrierten dienstseitigen Endpunkt (messages/events) gesendet, der mit Event Hubs kompatibel ist. IoT Hub stellt den integrierten Endpunkt messages/events für Ihre Back-End-Dienste bereit, damit die D2C-Nachrichten gelesen werden können, die von Ihrem Hub empfangen werden. Da dieser Endpunkt Event Hubs-kompatibel ist, könne Sie zum Lesen von Nachrichten alle Mechanismen verwenden, die der Event Hubs-Dienst unterstützt.
Bei Verwendung von Nachrichtenweiterleitung und aktivierter Fallbackroute gelangen alle Nachrichten, die keiner Abfrage in einer Route entsprechen, in den integrierten Endpunkt. Wenn Sie diese Fallbackroute deaktivieren, werden Nachrichten verworfen, für die sich keine Übereinstimmungen mit Abfragen ergeben.
Dieser Endpunkt wird derzeit nur über das AMQP-Protokoll an Port 5671 und über AMQP über WebSockets an Port 443 verfügbar gemacht. Ein IoT Hub macht die folgenden Eigenschaften verfügbar, damit Sie den integrierten Event Hub-kompatiblen Messagingendpunkt für messages/events steuern können.
Eigenschaft | BESCHREIBUNG |
---|---|
Anzahl von Partitionen | Legen Sie diese Eigenschaft bei der Erstellung fest, um die Anzahl von Partitionen für die D2C-Ereigniserfassung zu definieren. |
Aufbewahrungsdauer | Diese Eigenschaft gibt an, wie lange in Tagen IoT Hub Nachrichten aufbewahrt. Als Standardwert ist ein Tag festgelegt, dieser Wert kann jedoch auf sieben Tage erhöht werden. |
IoT Hub erlaubt eine Datenaufbewahrung im integrierten Endpunkt für maximal sieben Tage. Sie können die Aufbewahrungsdauer bei der Erstellung Ihres IoT Hubs festlegen. Die Datenaufbewahrungsdauer im IoT-Hub hängt von Ihrer IoT Hub-Ebene und dem Typ der Einheit ab. In Bezug auf die Größe können die integrierten Endpunkte Nachrichten mit der maximalen Nachrichtengröße bis zu einem Kontingent von mindestens 24 Stunden speichern. Beispielsweise bietet ein IoT-Hub der S1-Einheit genügend Speicher, um mindestens 400.000 Nachrichten von je 4 KB zu speichern. Wenn Ihre Geräte Nachrichten mit geringerer Größe senden, könnten diese je nach verbrauchtem Speicherplatz länger (bis zu sieben Tage) aufbewahrt werden. Wir garantieren, dass die Daten mindestens für die angegebene Aufbewahrungsdauer aufbewahrt werden. Nach der Aufbewahrungszeit laufen Nachrichten ab, und es kann auf sie nicht mehr zugegriffen werden. Sie können die Aufbewahrungszeit entweder programmgesteuert mithilfe der IoT Hub-Ressourcenanbieter-REST-APIsoder mit dem Azure-Portal ändern.
IoT Hub ermöglicht ihnen auch die Verwaltung von Consumergruppen auf dem integrierten Endpunkt. Für jeden IoT-Hub können bis zu 20 Consumergruppen vorhanden sein.
Herstellen einer Verbindung mit dem integrierten Endpunkt
Einige Produktintegrationen und Event Hubs SDKs sind über den IoT Hub informiert und ermöglichen es Ihnen, über Ihre IoT Hub-Dienstverbindungszeichenfolge eine Verbindung zum integrierten Endpunkt herzustellen.
Wenn Sie Event Hubs-SDKs oder Produktintegrationen verwenden, die IoT Hub nicht kennen, benötigen Sie einen Event Hubs-kompatiblen Endpunkt und einen Event Hubs-kompatiblen Namen. Sie können diese Werte wie folgt aus dem Portal abrufen:
Melden Sie sich beim Azure-Portal an, und navigieren Sie zu Ihrem IoT Hub.
Wählen Sie im Ressourcenmenü unter Hubeinstellungen die Option Integrierte Endpunkte aus.
Der Arbeitsbereich Integrierte Endpunkte enthält drei Abschnitte:
- Der Abschnitt Event Hub-Details enthält die folgenden Werte: Partitionen, Event Hub-kompatibler Name, Beibehalten für und Consumergruppen.
- Der Abschnitt Event Hub-kompatibler Endpunkt enthält die folgenden Werte: SAS-Richtlinie und Event Hub-kompatibler Endpunkt.
- Der Abschnitt Cloud-zu-Gerät-Messaging enthält die folgenden Werte: Standard-TTL, Aufbewahrungsdauer für Feedback und Maximale Übermittlungsanzahl.
Im Arbeitsbereich enthält das Feld Event Hub-kompatibler Endpunkt eine komplette Event Hubs-Verbindungszeichenfolge, die wie im folgenden Beispiel aussieht:
Endpoint=sb://abcd1234namespace.servicebus.windows.net/;SharedAccessKeyName=iothubowner;SharedAccessKey=keykeykeykeykeykey=;EntityPath=iothub-ehub-abcd-1234-123456
Wenn das von Ihnen verwendete SDK andere Werte erfordert, dann wären dies:
Name | Wert |
---|---|
Endpunkt | sb://abcd1234namespace.servicebus.windows.net/ |
Hostname | abcd1234namespace.servicebus.windows.net |
Namespace | abcd1234namespace |
Sie können dann eine beliebige SAS-Richtlinie aus der Dropdownliste SAS-Richtlinie auswählen, wie im obigen Screenshot gezeigt. Es werden nur Richtlinien mit den erforderlichen ServiceConnect-Berechtigungen für Verbindungen mit dem angegebenen Event Hub angezeigt.
SDK-Beispiele
Im Folgenden finden Sie die SDKs, die Sie zum Herstellen einer Verbindung mit dem integrierten Event Hubs-kompatiblen Endpunkt verwenden können, der IoT Hub verfügbar macht:
Herstellen einer Verbindung mit anderen Diensten und Produkten
Dies sind die Produktintegrationen, die Sie mit dem integrierten Event Hubs-kompatiblen Endpunkt verwenden können, der IoT Hub verfügbar macht:
-
Weitere Informationen finden Sie unter Azure IoT Hub-Bindungen für Azure Functions.
-
Weitere Informationen finden Sie unter Streamen von Daten als Eingabe in Stream Analytics.
-
Weitere Informationen finden Sie unter Hinzufügen einer IoT-Hub-Ereignisquelle zu Ihrer Azure Time Series Insights-Umgebung.
-
Weitere Informationen finden Sie im Apache Kafka-Entwicklerleitfaden für Azure Event Hubs.
Nächste Schritte
Weitere Informationen zu IoT Hub-Endpunkten finden Sie unter IoT Hub-Endpunkte.
Informationen zum Weiterleiten von Gerät-zu-Cloud-Nachrichten an benutzerdefinierte Endpunkte finden Sie unter Verwenden von Nachrichtenrouten und benutzerdefinierten Endpunkten für D2C-Nachrichten.