IoT Hub (iOS) ile buluttan cihaza iletiler gönderme

Azure IoT Hub, milyonlarca cihaz ve bir çözüm arka ucu arasında güvenilir ve güvenli çift yönlü iletişimin etkinleştirilmesine yardımcı olan tam olarak yönetilen bir hizmettir.

Bu makale, şunları nasıl yapacağınızı gösterir:

  • Cihazda buluttan cihaza (C2D) iletiler alma

Bu makalenin sonunda aşağıdaki Swift iOS projesini çalıştıracaksınız:

Not

IoT Hub, Azure IoT cihaz SDK'ları aracılığıyla birçok cihaz platformu ve dili (C, Java, Python ve JavaScript dahil) için SDK desteğine sahiptir.

Buluttan cihaza iletiler hakkında daha fazla bilgi edinmek için bkz. IoT hub'ından buluttan cihaza iletiler gönderme.

Önkoşullar

  • Azure'da etkin bir IoT hub'ı.

  • IoS Platformu için Azure IoT Örnekleri deposundaki kod örneği.

  • En son iOS SDK sürümünü çalıştıran en yeni XCode sürümü. Bu makale XCode 9.3 ve iOS 11.3 ile test edilmiştir.

  • CocoaPods'un en son sürümü.

  • Güvenlik duvarınızda 8883 numaralı bağlantı noktasının açık olduğundan emin olun. Bu makaledeki cihaz örneği, 8883 numaralı bağlantı noktası üzerinden iletişim kuran MQTT protokollerini kullanır. Bu bağlantı noktası bazı kurumsal ve eğitim ağ ortamlarında engellenebilir. Bu sorunu çözmenin daha fazla bilgi ve yolları için bkz. IoT Hub 'a bağlanma (MQTT).

IoT cihazının simülasyonunu oluşturma

Bu bölümde, IoT hub'ından buluttan cihaza iletileri almak için Swift uygulaması çalıştıran bir iOS cihazının simülasyonunu oluşturacaksınız.

CocoaPods yükleme

CocoaPods, üçüncü taraf kitaplıkları kullanan iOS projeleri için bağımlılıkları yönetir.

Terminal penceresinde, önkoşullarda indirdiğiniz depoyu içeren klasöre gidin. Ardından örnek projeye gidin:

cd quickstart/sample-device

XCode’un kapalı olduğundan emin olun ve podfile dosyasında bildirilen CocoaPods’u yüklemek üzere aşağıdaki komutu çalıştırın:

pod install

Yükleme komutu, projeniz için gereken podları yüklemeye ek olarak bağımlılıklar için podları kullanacak şekilde önceden yapılandırılmış bir XCode çalışma alanı dosyası da oluşturmuştur.

Örnek cihaz uygulamasını çalıştırma

  1. Cihazınızın bağlantı dizesini alın. Bu dizeyi cihaz ayrıntıları sayfasındaki Azure portal kopyalayabilir veya aşağıdaki CLI komutuyla alabilirsiniz:

    az iot hub device-identity connection-string show --hub-name {YourIoTHubName} --device-id {YourDeviceID} --output table
    
  2. Örnek çalışma alanını XCode'da açın.

    open "MQTT Client Sample.xcworkspace"
    
  3. MQTT İstemci Örneği projesini ve ardından aynı ada ait klasörü genişletin.

  4. XCode’da düzenlemek üzere ViewController.swift dosyasını açın.

  5. connectionString değişkenini arayın ve değeri ilk adımda kopyaladığınız cihaz bağlantı dizesiyle güncelleştirin.

  6. Yaptığınız değişiklikleri kaydedin.

  7. Derle ve çalıştır düğmesi ya da command + r tuş birleşimi ile projeyi cihaz öykünücüsünde çalıştırın.

    Cihaz öykünücüsündeki Oluştur ve çalıştır düğmesini gösteren ekran görüntüsü.

Buluttan cihaza ileti gönderme

Artık buluttan cihaza iletileri almaya hazırsınız. Simülasyon IoT cihazınıza buluttan cihaza test iletisi göndermek için Azure portal kullanın.

  1. Sanal IoT cihazında çalışan iOS Uygulama Örneği uygulamasında Başlat'ı seçin. Uygulama cihazdan buluta ileti göndermeye başlar, ancak buluttan cihaza iletileri dinlemeye de başlar.

    Örnek IoT cihaz uygulamasını görüntüleme

  2. Azure portal IoT hub'ınıza gidin.

  3. Cihazlar sayfasında, sanal IoT cihazınızın cihaz kimliğini seçin.

  4. Buluttan cihaza ileti arabirimini açmak için İletiden Cihaza'ya seçeneğini belirleyin.

  5. İleti gövdesi metin kutusuna düz metin iletisi yazın ve İleti gönder'i seçin.

  6. Sanal IoT cihazınızda çalışan uygulamayı izleyin. IoT Hub gelen iletileri denetler ve ekrandaki en son iletiden gelen metni yazdırır. Çıkışınız aşağıdaki örnekteki gibi görünmelidir:

    Buluttan cihaza iletileri görüntüleme

Sonraki adımlar

Bu makalede, buluttan cihaza ileti göndermeyi ve almayı öğrendiniz.