全部产品
Search
文档中心

Link IoT Edge:SDK for Python

更新时间:Jan 24, 2026

Link IoT Edge menyediakan SDK for Python bernama lethingaccesssdk. Topik ini menjelaskan cara menggunakan SDK tersebut.

Untuk informasi lebih lanjut mengenai kode sumber SDK, kunjungi Open-source SDK for Python.

Instalasi dan penggunaan

  1. Jalankan perintah berikut untuk menginstal SDK:
    pip3 install lethingaccesssdk
  2. Setelah SDK terinstal, Anda dapat mengembangkan driver berdasarkan antarmuka SDK.
    Penting Setelah pengembangan driver selesai, menjalankan driver secara langsung akan menghasilkan error. Anda harus men-deploy driver ke gateway melalui Konsol IoT Platform sebelum menjalankannya. Untuk informasi selengkapnya tentang cara men-deploy driver ke gateway, lihat Pengembangan driver.

    Berikut adalah contoh penggunaan SDK untuk mengembangkan driver:

    # -*- coding: utf-8 -*-
    import logging
    import time
    import lethingaccesssdk
    from threading import Timer
    # Berdasarkan perangkat, pengguna perlu mengimplementasikan fungsi getProperties, setProperties, dan callService.
    class Temperature_device(lethingaccesssdk.ThingCallback):
        def __init__(self):
            self.temperature = 41
            self.humidity = 80
        def getProperties(self, input_value):
            '''
            Mendapatkan properti dari perangkat fisik dan mengembalikan hasilnya.
            :param input_value:
            :return:
            '''
            retDict = {
                "temperature": 41,
                "humidity": 80
            }
            return 0, retDict
        def setProperties(self, input_value):
            '''
            Menetapkan properti ke perangkat fisik dan mengembalikan hasilnya.
            :param input_value:
            :return:
            '''
            return 0, {}
        def callService(self, name, input_value):
            '''
            Memanggil layanan pada perangkat fisik dan mengembalikan hasilnya.
            :param name:
            :param input_value:
            :return:
            '''
            return 0, {}
    def thing_behavior(client, device):
        while True:
            properties = {"temperature": device.temperature,
                          "humidity": device.humidity}
            client.reportProperties(properties)
            client.reportEvent("high_temperature", {"temperature": 41})
            time.sleep(2)
    try:
        thing_config = lethingaccesssdk.Config().getThingInfos()
        for config in thing_config:
            device = Temperature_device()
            client = lethingaccesssdk.ThingAccessClient(config)
            client.registerAndonline(device)
            t = Timer(2, thing_behavior, (client, device))
            t.start()
    except Exception as e:
        logging.error(e)
    # jangan hapus fungsi ini
    def handler(event, context):
        return 'hello world'

Config

Informasi terkait konfigurasi driver.

  • Config()

    Membuat objek Config baru berdasarkan string konfigurasi.

  • getThingInfos()

    Mengembalikan semua informasi terkait perangkat.

    Nilai kembali dijelaskan sebagai berikut:

    Mengembalikan informasi konfigurasi terenkapsulasi yang digunakan perangkat untuk terhubung ke Link IoT Edge.

    Tabel 1. Parameter Respons
    ParameterTipeDeskripsi
    ThingInfoListInformasi perangkat.
    Tabel 2. Deskripsi ThingInfo
    ParameterTipeDeskripsi
    productKeyStringPengidentifikasi unik Produk.
    deviceNameStringNama Perangkat.
    customObjectKonfigurasi perangkat kustom.
  • getDriverInfo()

    Mengembalikan informasi driver.

    Respons:
    dict

ThingCallback

Buat kelas (misalnya, Demo_device) yang mewarisi ThingCallback berdasarkan perangkat fisik, lalu implementasikan fungsi setProperties, getProperties, dan callService dalam kelas tersebut (Demo_device).

  • setProperties

    Menetapkan properti perangkat.

    Tabel 3. Parameter Permintaan
    ParameterTipeDeskripsi
    propertiesDictObjek properti. Format nilai properti sebagai berikut:
    {
        "property1": "value1", 
        "property2": "value2"
    }
    Tabel 4. Parameter Respons
    ParameterTipeDeskripsi
    codeIntegerJika permintaan berhasil, dikembalikan nilai 0. Jika gagal, dikembalikan kode kesalahan bukan nol.
    outputDictData yang dikembalikan. Anda dapat menyesuaikan isinya. Contoh:
    {
        "key1": xxx,
        "key2": yyy,
        ...
    }

    Jika tidak ada data yang dikembalikan, {} dikembalikan.

  • getProperties

    Mendapatkan properti perangkat.

    Tabel 5. Parameter Permintaan
    ParameterTypeDeskripsi
    keysListNama-nama properti. Formatnya sebagai berikut:
    ['key1', 'key2']
    Tabel 6. Parameter Respons
    ParameterTipeDeskripsi
    codeIntegerJika permintaan berhasil, dikembalikan nilai 0. Jika gagal, dikembalikan kode kesalahan bukan nol.
    outputDictNilai kembali. Contoh:
    {
        'property1': xxx,
        'property2': yyy,
        ..}.
    }
  • callService

    Memanggil layanan perangkat.

    Tabel 7. Parameter Permintaan
    ParameterTipeDeskripsi
    nameStringNama layanan perangkat.
    argsDictDaftar parameter input layanan. Formatnya sebagai berikut:
    {
        "key1": "value1", 
        "key2": "value2"
    }
    Tabel 8. Parameter Respons
    ParameterTypeDeskripsi
    codeIntegerJika permintaan berhasil, dikembalikan nilai 0. Jika gagal, dikembalikan kode kesalahan bukan nol.
    outputDictData yang dikembalikan. Anda dapat menyesuaikan isinya. Contoh:
    {
        "key1": xxx,
        "key2": yyy,
        ...
    }

    Jika tidak ada data yang dikembalikan, {} dikembalikan.

ThingAccessClient(config)

Klien yang memungkinkan perangkat terhubung ke IoT Platform. Anda dapat menggunakan klien ini untuk melaporkan properti dan event, serta mengirim perintah dari cloud ke perangkat.

Tabel 9. Parameter Permintaan
ParameterTipeDeskripsi
configDictproductKey dan deviceName yang diberikan oleh IoT Platform.
Contoh:
{
    "productKey": "xxx",
    "deviceName": "yyy"
}
  • registerAndOnline(ThingCallback)

    Mendaftarkan perangkat ke gateway dan memberi tahu gateway untuk menghubungkan perangkat ke IoT Platform. Anda harus mendaftarkan dan menghubungkan perangkat ke IoT Platform agar dapat menerima perintah atau mengirim data ke IoT Platform.

    Tabel 10. Parameter Permintaan
    ParameterTipeDeskripsi
    ThingCallbackObjectObjek callback perangkat.
  • reportProperties(properties)
    Melaporkan properti perangkat ke IoT Platform.
    Tabel 11. Parameter Permintaan
    ParameterTipeDeskripsi
    propertiesDictKunci dan nilai dalam properti. Formatnya sebagai berikut:
    {
        "key1": "value1", 
        "key2": "value2"
    }
  • reportEvent(eventName, args)
    Melaporkan event perangkat ke IoT Platform.
    Tabel 12. Parameter Permintaan
    ParameterTipeDeskripsi
    eventNameStringNama event, yang sama dengan nama event yang Anda tentukan dalam definisi Produk.
    argsDictKunci dan nilai dalam event. Formatnya sebagai berikut:
    {
        "key1": "value1", 
        "key2": "value2"
    }
  • getTsl()

    Mengembalikan string TSL perangkat. Format datanya sama seperti di IoT Platform.

    Respons:
    A TSL string
  • getTslExtInfo()

    Mengembalikan informasi tambahan dari TSL.

    Respons:
    The extended information of the TSL.
  • online()

    Memberi tahu gateway bahwa perangkat sedang online. Antarmuka ini digunakan ketika perangkat offline lalu kembali online.

  • offline()

    Memberi tahu gateway bahwa perangkat sedang offline.

  • cleanup()

    Mendaur ulang sumber daya. Anda dapat menggunakan antarmuka ini untuk melepaskan sumber daya.

  • unregister()

    Memutuskan ikatan perangkat dari gateway. Gunakan antarmuka ini dengan hati-hati.

getConfig()

Mendapatkan informasi terkait konfigurasi driver.

Nilai kembalinya adalah string konfigurasi driver.