Tüm Ürünler
Search
Belge Merkezi

IoT Platform:Message Forwarding kullanarak M2M iletişimi

Son Güncelleme:Oct 03, 2026

Bu konu, bir mobil uygulama ile akıllı lamba arasında M2M (makineden makineye) iletişimini sağlamak için IoT Platform'un Data Forwarding özelliğinin nasıl kullanılacağını açıklar.

Arka Plan

Aşağıdaki şekilde, bir mobil uygulama kullanılarak akıllı bir lambanın kontrol edilmesi süreci gösterilmektedir.

M2M设备间通信

Ürünler ve cihazlar oluşturma

  1. IoT Platform konsolu üzerinde, örneğinizde mobil uygulama için bir ürün ve bir cihaz oluşturun. Daha fazla bilgi için bkz. Ürün oluşturma ve Cihaz oluşturma.

    Bu örnekte, ürünü oluşturmak için aşağıdaki parametreleri ayarlayın: Product Name değerini MobileApp olarak, node type değerini directly connected device olarak belirleyin. Diğer parametreler için varsayılan değerleri kullanın.

    Cihaz için DeviceName değerini ControlApp olarak ayarlayın.

    Bu örnekte, MobileApp ürününün ProductKey değeri al987654321'dir.

    Mobil uygulama için ürün ve cihazı oluşturduktan sonra uygulamayı IoT Platform'a bağlayabilirsiniz.

    Bir mobil uygulama kullanıcısı kayıt olup giriş yaptığında, sunucunuz cihaz bilgilerini mobil uygulamaya gönderir; bu sayede uygulama bir cihaz olarak IoT Platform'a bağlanabilir.

  2. Kontrol komutlarını göndermek için yayınlama izinlerine sahip özel bir konu ekleyin.

    Bu örnekte, aşağıdaki konuyu ekleyin: /al987654321/ControlApp/user/command. Daha fazla bilgi için bkz. İletişim için özel konuları kullanma.

  3. Mobil uygulamayı geliştirin.

    Bu örnekte, mobil uygulama IoT Platform ile iletişim kurmak için HTTPS kullanır.

    Aşağıdaki kod, mobil uygulamanın özel konu üzerinden akıllı lambaya gönderdiği bir kontrol komutunun yük verisi biçimini göstermektedir:

    {
        "TargetDevice": "light", 
        "Switch": 0, 
        "Timestamp": 1557750407000
    }

    Cihaz tarafı SDK geliştirmesiyle ilgili ayrıntılar için bkz. Link SDK kullanarak cihazları bağlama.

  4. IoT Platform konsolu üzerinde, örneğinizde akıllı lamba için bir ürün ve bir cihaz oluşturun ve özelliklerini tanımlayın. Daha fazla bilgi için bkz. Ürün oluşturma, Tek seferde birden çok cihaz oluşturma ve Thing Specification Language (TSL) özelliği ekleme.

    Bu örnekte, ürünü oluşturmak için aşağıdaki parametreleri ayarlayın: Product Name değerini SmartLamp olarak, node type değerini directly connected device olarak belirleyin. Diğer parametreler için varsayılan değerleri kullanın.

    Oluşturduğunuz cihaz için DeviceName değerini light olarak ayarlayın.

    Bu örnekte, SmartLamp ürününün ProductKey değeri al123456789'dur.

    İş gereksinimlerinize göre Thing Specification Language (TSL) özellikleri ekleyebilirsiniz. Örneğin, Switch adında bir TSL özelliği ekleyin. Akıllı lambanın anahtarını kontrol etmek için veri türünü Boolean olarak ayarlayın (kapalı için 0, açık için 1).

  5. Mobil uygulamadan gelen kontrol komutlarını almak için abonelik izinlerine sahip özel bir konu ekleyin.

    Bu örnekte, aşağıdaki konuyu ekleyin: /al123456789/light/user/set. Daha fazla bilgi için bkz. İletişim için özel konuları kullanma.

  6. Akıllı lamba cihazını IoT Platform'a bağlanacak şekilde geliştirin ve komutları alıp yürütme mantığını uygulayın.

    Bu örnekte, cihaz IoT Platform ile iletişim kurmak için MQTT kullanır. Akıllı lamba cihazının komutları alabilmesi için /al123456789/light/user/set konusuna abone olması gerekir. Cihaz bir komut aldıktan sonra, bunu yürütmek için gerekli mantığı geliştirmeniz gerekir.

    Cihaz tarafı SDK geliştirmesiyle ilgili ayrıntılar için bkz. Link SDK kullanarak cihazları bağlama.

Message Forwarding ayrıştırıcısını yapılandırma

Mobil uygulama tarafından yayınlanan komutları akıllı lambanın konusuna iletmek için bir Message Forwarding ayrıştırıcısı yapılandırın.

  1. IoT Platform konsolu üzerinde oturum açın.

  2. Overview sayfasında, All environment seçeneğine tıklayın. All environment sekmesinde, yönetmek istediğiniz örneği bulun ve örnek kimliğine veya örnek adına tıklayın.

  3. Sol gezinme bölmesinde, Message Forwarding > Data Forwarding yolunu izleyin.

Veri kaynağı ekleme

Aşağıdaki adımlardaki parametrelerle ilgili daha fazla bilgi için bkz. İletilecek bir veri kaynağı ekleme.

  1. Data Source sekmesine tıklayın ve bir veri kaynağı eklemek için aşağıdaki adımları uygulayın.

    Önemli

    Önceki sürümün sayfası görüntüleniyorsa, sağ üst köşedeki Go to New Version seçeneğine tıklayın. Yeni sayfada, Data Source sekmesine tıklayın.

    1. Create Data Source seçeneğine tıklayın.

    2. Create Data Source iletişim kutusunda, veri kaynağı için AppData gibi bir ad girin.

    3. OK seçeneğine tıklayın.

  2. AppData sayfasında, Add Topic seçeneğine tıklayın.

  3. Add Topic iletişim kutusunda, işlenecek konuyu seçin ve OK seçeneğine tıklayın.

    Bu örnekte, mobil uygulama cihazı ControlApp'in /al987654321/ControlApp/user/command konusunu seçin. Bu sayede mesajdan TargetDevice, Timestamp ve Switch alanlarının değerlerini alabilirsiniz.

Veri hedefi yapılandırma

Aşağıdaki adımlardaki parametrelerle ilgili daha fazla bilgi için bkz. Veri hedefi ekleme.

  1. Data Forwarding sayfasına geri dönün ve Data Destination sekmesine tıklayın.

  2. Create Data Destination seçeneğine tıklayın.

  3. İletişim kutusunda, veri hedefi için OtherTopic gibi bir ad girin ve SmartLamp ürününü seçin.

    Select Action için republish to another topic seçeneğini belirleyin.

  4. OK seçeneğine tıklayın.

Ayrıştırıcıyı yapılandırma ve başlatma

Aşağıdaki adımlardaki parametrelerle ilgili daha fazla bilgi için bkz. Ayrıştırıcı yapılandırma.

  1. Parser sekmesine tıklayın ve bir ayrıştırıcı eklemek için aşağıdaki adımları uygulayın.

    1. Create Parser seçeneğine tıklayın.

    2. İletişim kutusunda, ayrıştırıcı için DataParser gibi bir ad girin.

    3. OK seçeneğine tıklayın.

  2. DataParser sayfasında bir veri kaynağı ilişkilendirin.

    1. Yapılandırma sihirbazının Data Source adımında, Associate Data Source seçeneğine tıklayın.

    2. İletişim kutusunda, Data Source açılır listesinden AppData öğesini seçin.

    3. OK seçeneğine tıklayın.

  3. DataParser sayfasında, bir veri hedefi ilişkilendirmek için yapılandırma sihirbazındaki Data Destination seçeneğine tıklayın.

    1. Data Destination listesinin sağ üst köşesinde, Associate Data Destination seçeneğine tıklayın.

    2. Görüntülenen iletişim kutusunda, Data Destination açılır listesinden OtherTopic öğesini seçin.

    3. OK seçeneğine tıklayın.

    4. Veri hedefi listesinde, data destination ID değerini görüntüleyin ve kaydedin. Bu örnekte, kimlik 1000 değeridir.

      Ayrıştırıcı betiğinde bu data destination ID değerini kullanmanız gerekir.

  4. DataParser sayfasında, betiği yapılandırmak için yapılandırma sihirbazındaki Parser Script seçeneğine tıklayın.

    1. Betik düzenleyicide bir ayrıştırıcı betiği girin. Hedef konuyu, akıllı lamba cihazının komutları almak için kullandığı /al123456789/light/user/set olarak ayarlayın.

      Betik sözdizimi hakkında daha fazla bilgi için bkz. Betik sözdizimi. Veri iletme işlevleri hakkında daha fazla bilgi için bkz. writeIotTopic() işlevi.

      // Use the payload() function to get the message content reported by the device and parse it as JSON.
      var data = payload("json");
      // Get the device name. In this example, the value of TargetDevice is the smart lamp device, light.
      var dn = data.TargetDevice;
      // Define the destination topic that the smart lamp subscribes to.
      var topic_set = "/al123456789/"+dn+"/user/set";
      // Call writeIotTopic() to forward the original payload to the destination topic (ID 1000).
      writeIotTopic(1000, topic_set, data)
    2. Betik düzenleyicinin altında, Save seçeneğine tıklayın.

    3. Debugging seçeneğine tıklayın. Sağ tarafta açılan panelde, betiği test etmek için bir ürün ve bir cihaz seçin; ayrıca bir konu ve yük verisi girin.

      Product için MobileApp öğesini seçin. Device için ControlApp öğesini seçin. Topic için /productKey/ControlApp/user/command girin. Payload Data için {"TargetDevice": "light", "Switch": 0, "Timestamp": 1557750407000} girin.

      Başarılı bir test aşağıdaki çıktıyı üretir.

      action: 
          transmit to republish[destinationId=1000], data:{"Switch":0,"Timestamp":1557750407000,"TargetDevice":"light"}
      variables: 
          data : {"Switch":0,"Timestamp":1557750407000,"TargetDevice":"light"}
          topic_set : /al123456789/light/user/set
          dn : light
    4. Panelin sol alt köşesinde, Close seçeneğine tıklayın.

    5. Betik düzenleyicinin altında, Publish seçeneğine tıklayın.

  5. Parser sayfasındaki Data Forwarding sekmesine geri dönün. DataParser ayrıştırıcısının Actions sütununda, Start seçeneğine tıklayın.

  6. Ayrıştırıcıyı başlatmak için OK seçeneğine tıklayın.

Cihazlar arası iletişim

  1. Mobil uygulama kullanıcısı, uygulamayı akıllı lambaya bağlamak için bir QR kodunu tarar.

    Uygulama sunucunuza bir bağlama isteği gönderdiğinde, sunucu başarıyla bağlanan akıllı lambanın DeviceName değerini döndürür. Bu örnekte, cihaz adı light'tır.

  2. Kullanıcı, mobil uygulamadan bir kontrol komutu gönderir.

    1. Mobil uygulama, özel bir konu üzerinden bir komut gönderir. Bu örnekte konu /al987654321/ControlApp/user/command şeklindedir.

    2. IoT Platform, Message Forwarding ayrıştırıcısını kullanarak komutu akıllı lamba konusuna iletir. Bu örnekte konu /al123456789/light/user/set şeklindedir.

    3. Akıllı lamba komutu aldıktan sonra, ilgili eylemi gerçekleştirir.

    Not

    Bağlantı kaldırıldıktan sonra, uygulama artık akıllı lambayı kontrol edemez.