Cloud-naar-apparaat-berichten verzenden met IoT Hub (iOS)

Azure IoT Hub is een volledig beheerde service die betrouwbare en veilige bidirectionele communicatie tussen miljoenen apparaten en een back-end van een oplossing mogelijk maakt.

In dit artikel leest u informatie over:

  • Cloud-naar-apparaat-berichten (C2D) ontvangen op een apparaat

Aan het einde van dit artikel voert u het volgende Swift iOS-project uit:

Notitie

IoT Hub biedt SDK-ondersteuning voor veel apparaatplatforms en -talen (waaronder C, Java, Python en JavaScript) via de Azure IoT-apparaat-SDK's.

Zie Cloud-naar-apparaat-berichten verzenden vanuit een IoT-hub voor meer informatie over cloud-naar-apparaat-berichten.

Vereisten

  • Een actieve IoT-hub in Azure.

  • Het codevoorbeeld uit de opslagplaats Azure IoT-voorbeelden voor IoS Platform.

  • De nieuwste versie van XCode, met de nieuwste versie van de iOS-SDK. Dit artikel is getest met XCode 9.3 en iOS 11.3.

  • De nieuwste versie van CocoaPods.

  • Zorg ervoor dat de poort 8883 is geopend in de firewall. Het apparaatvoorbeeld in dit artikel maakt gebruik van het MQTT-protocol, dat communiceert via poort 8883. Deze poort is in sommige netwerkomgevingen van bedrijven en onderwijsinstellingen mogelijk geblokkeerd. Zie Verbinding maken met IoT Hub (MQTT) voor meer informatie en manieren om dit probleem te omzeilen.

Een IoT-apparaat simuleren

In deze sectie simuleert u een iOS-apparaat waarop een Swift-toepassing wordt uitgevoerd om cloud-naar-apparaat-berichten van de IoT-hub te ontvangen.

CocoaPods installeren

CocoaPods beheert afhankelijkheden voor iOS-projecten die gebruikmaken van bibliotheken van derden.

Navigeer in een terminalvenster naar de map met de opslagplaats die u hebt gedownload in de vereisten. Navigeer vervolgens naar het voorbeeldproject:

cd quickstart/sample-device

Zorg ervoor dat XCode is gesloten en voer vervolgens de volgende opdracht uit om de CocoaPods te installeren die worden gedeclareerd in het podfile-bestand:

pod install

Naast het installeren van de pods die nodig zijn voor uw project, heeft de installatieopdracht ook een XCode-werkruimtebestand gemaakt dat al geconfigureerd is om de pods te gebruiken voor afhankelijkheden.

De voorbeeldtoepassing voor het apparaat uitvoeren

  1. Haal de connection string voor uw apparaat op. U kunt deze tekenreeks kopiƫren vanaf de Azure Portal op de pagina met apparaatdetails of ophalen met de volgende CLI-opdracht:

    az iot hub device-identity connection-string show --hub-name {YourIoTHubName} --device-id {YourDeviceID} --output table
    
  2. Open de voorbeeldwerkruimte in XCode.

    open "MQTT Client Sample.xcworkspace"
    
  3. Vouw het project MQTT-clientvoorbeeld uit en vervolgens de map met dezelfde naam.

  4. Open ViewController.swift om het te bewerken in XCode.

  5. Zoek de variabele connectionString en werk de waarde bij met de apparaat-connection string die u in de eerste stap hebt gekopieerd.

  6. Sla uw wijzigingen op.

  7. Voer het project in de apparaatemulator uit met de knop Build and run of de toetscombinatie command+r.

    Schermopname van de knop Bouwen en uitvoeren in de apparaatemulator.

Een cloud-naar-apparaat-bericht verzenden

U bent nu klaar om cloud-naar-apparaat-berichten te ontvangen. Gebruik de Azure Portal om een cloud-naar-apparaat-testbericht te verzenden naar uw gesimuleerde IoT-apparaat.

  1. Selecteer Start in de voorbeeld-app voor iOS-app die wordt uitgevoerd op het gesimuleerde IoT-apparaat. De toepassing begint met het verzenden van apparaat-naar-cloud-berichten, maar luistert ook naar cloud-naar-apparaat-berichten.

    Voorbeeld van een IoT-apparaat-app weergeven

  2. Navigeer in de Azure Portal naar uw IoT-hub.

  3. Selecteer op de pagina Apparaten de apparaat-id voor uw gesimuleerde IoT-apparaat.

  4. Selecteer Bericht naar apparaat om de cloud-naar-apparaat-berichtinterface te openen.

  5. Schrijf een bericht zonder opmaak in het tekstvak Berichttekst en selecteer vervolgens Bericht verzenden.

  6. Bekijk de app die wordt uitgevoerd op uw gesimuleerde IoT-apparaat. Er wordt gecontroleerd op berichten van IoT Hub en de tekst van de meest recente op het scherm wordt afgedrukt. De uitvoer moet eruitzien als in het volgende voorbeeld:

    Cloud-naar-apparaat-berichten weergeven

Volgende stappen

In dit artikel hebt u geleerd hoe u cloud-naar-apparaat-berichten verzendt en ontvangt.