Udostępnij za pośrednictwem


Wysyłanie komunikatów z chmury do urządzenia przy użyciu IoT Hub (iOS)

Azure IoT Hub to w pełni zarządzana usługa, która ułatwia niezawodną i bezpieczną dwukierunkową komunikację między milionami urządzeń a zapleczem rozwiązania.

W tym artykule wyjaśniono, jak:

  • Odbieranie komunikatów z chmury do urządzenia (C2D) na urządzeniu

Na końcu tego artykułu uruchomisz następujący projekt swift dla systemu iOS:

Uwaga

IoT Hub ma obsługę zestawu SDK dla wielu platform urządzeń i języków (w tym C, Java, Python i JavaScript) za pośrednictwem zestawów SDK urządzeń usługi Azure IoT.

Aby dowiedzieć się więcej na temat komunikatów z chmury do urządzenia, zobacz Wysyłanie komunikatów z chmury do urządzenia z centrum IoT Hub.

Wymagania wstępne

  • Aktywne centrum IoT na platformie Azure.

  • Przykładowy kod z repozytorium Azure IoT Samples for IoS Platform (Przykłady usługi Azure IoT dla platformy IoS).

  • Najnowsza wersja środowiska XCode korzystająca z najnowszej wersji zestawu SDK systemu iOS. Ten artykuł został przetestowany przy użyciu programu XCode 9.3 i systemu iOS 11.3.

  • Najnowsza wersja menedżera CocoaPods.

  • Upewnij się, że port 8883 jest otwarty w zaporze. Przykład urządzenia w tym artykule używa protokołu MQTT, który komunikuje się za pośrednictwem portu 8883. Ten port może zostać zablokowany w niektórych środowiskach sieci firmowych i edukacyjnych. Aby uzyskać więcej informacji i sposobów obejścia tego problemu, zobacz Łączenie się z IoT Hub (MQTT).

Symulowanie urządzenia IoT

W tej sekcji zasymulujesz urządzenie z systemem iOS z uruchomioną aplikacją Swift w celu odbierania komunikatów z chmury do urządzenia z centrum IoT Hub.

Instalowanie zasobników CocoaPods

CocoaPods zarządza zależnościami dla projektów systemu iOS korzystających z bibliotek innych firm.

W oknie terminalu przejdź do folderu zawierającego repozytorium pobrane w wymaganiach wstępnych. Następnie przejdź do przykładowego projektu:

cd quickstart/sample-device

Upewnij się, że środowisko XCode jest zamknięte, a następnie uruchom następujące polecenie, aby zainstalować zasobniki CocoaPods zadeklarowane w pliku podfile:

pod install

Oprócz instalacji zasobników wymaganych przez projekt polecenie instalacji tworzy także plik obszaru roboczego środowiska XCode, który jest już skonfigurowany do używania zasobników na potrzeby zależności.

Uruchamianie przykładowej aplikacji urządzenia

  1. Pobierz parametry połączenia dla urządzenia. Możesz skopiować ten ciąg z Azure Portal na stronie szczegółów urządzenia lub pobrać go za pomocą następującego polecenia interfejsu wiersza polecenia:

    az iot hub device-identity connection-string show --hub-name {YourIoTHubName} --device-id {YourDeviceID} --output table
    
  2. Otwórz przykładowy obszar roboczy w środowisku XCode.

    open "MQTT Client Sample.xcworkspace"
    
  3. Rozwiń projekt Przykładowy klient MQTT , a następnie folder o tej samej nazwie.

  4. Otwórz plik ViewController.swift do edycji w środowisku XCode.

  5. Wyszukaj zmienną connectionString i zaktualizuj wartość za pomocą parametrów połączenia urządzenia skopiowanych w pierwszym kroku.

  6. Zapisz zmiany.

  7. Uruchom projekt w emulatorze urządzenia za pomocą przycisku Skompiluj i uruchom lub kombinacji klawiszy Command + R.

    Zrzut ekranu przedstawiający przycisk Kompiluj i uruchom w emulatorze urządzenia.

Wysyłanie komunikatu z chmury do urządzenia

Teraz możesz otrzymywać komunikaty z chmury do urządzenia. Użyj Azure Portal, aby wysłać testowy komunikat z chmury do urządzenia do symulowanego urządzenia IoT.

  1. W przykładowej aplikacji dla systemu iOS działającej na symulowanym urządzeniu IoT wybierz pozycję Uruchom. Aplikacja rozpoczyna wysyłanie komunikatów z urządzenia do chmury, ale także rozpoczyna nasłuchiwanie komunikatów z chmury do urządzenia.

    Wyświetlanie przykładowej aplikacji urządzenia IoT

  2. W Azure Portal przejdź do centrum IoT Hub.

  3. Na stronie Urządzenia wybierz identyfikator urządzenia dla symulowanego urządzenia IoT.

  4. Wybierz pozycję Komunikat na urządzenie, aby otworzyć interfejs komunikatów typu chmura-urządzenie.

  5. Napisz wiadomość w postaci zwykłego tekstu w polu tekstowym Treść wiadomości , a następnie wybierz pozycję Wyślij wiadomość.

  6. Obejrzyj aplikację uruchomioną na symulowanym urządzeniu IoT. Sprawdza komunikaty z IoT Hub i drukuje tekst z najnowszego na ekranie. Dane wyjściowe powinny wyglądać podobnie do następującego przykładu:

    Wyświetlanie komunikatów z chmury do urządzenia

Następne kroki

W tym artykule przedstawiono sposób wysyłania i odbierania komunikatów z chmury do urządzenia.