All Products
Search
Document Center

IoT Platform:InvokeThingsService

Last Updated:May 27, 2026

Memanggil beberapa layanan perangkat sekaligus.

Catatan penggunaan

Operasi ini hanya dapat dipanggil secara asinkron.

Saat perangkat menerima panggilan layanan, perangkat mengembalikan respons kepada pemanggil layanan. Saat mengonfigurasi perangkat, Anda harus menentukan logika respons dan parameter respons. Format data parameter respons harus sesuai dengan Protokol Alink. Contoh:


{
    "id": "58***89",
    "code": 200,
    "data": {},
    "message": "success",
    "localizedMsg": "localizedMsg"
}
            
Catatan
  • Parameter id menentukan pengidentifikasi unik permintaan. ID ini dihasilkan oleh Platform IoT. Perangkat dapat memperoleh ID tersebut dari parameter permintaan dan mengembalikannya.
  • Parameter code menentukan hasil panggilan layanan. Nilainya berupa bilangan bulat.
  • Parameter data menunjukkan hasil panggilan layanan dan dikembalikan kepada pemanggil layanan. Anda dapat menentukan parameter yang disertakan dalam hasil yang dikembalikan. Data harus dalam format JSON.
  • Parameter message dan localizedMsg bersifat opsional.

    Link SDK untuk C dari Platform IoT menyediakan contoh cara menggunakan model Thing Specification Language (TSL). Untuk informasi selengkapnya, lihat Call device services.

Batas QPS

Anda dapat memanggil operasi API ini hingga 10 kali per detik per akun.

Catatan Pengguna RAM dari suatu Akun Alibaba Cloud berbagi kuota akun tersebut.

Debugging

OpenAPI Explorer secara otomatis menghitung nilai signature. Untuk kenyamanan Anda, kami menyarankan agar Anda memanggil operasi ini di OpenAPI Explorer. OpenAPI Explorer secara dinamis menghasilkan contoh kode operasi ini untuk berbagai SDK.

Parameter permintaan

ParameterTypeWajibContohDeskripsi
ActionStringYaInvokeThingsService

Operasi yang ingin Anda lakukan. Tetapkan nilai ke InvokeThingsService.

ArgsStringYa{"param1":1}

Parameter input layanan. Nilainya berupa string JSON. Contoh: Args={"param1": 1}.

Jika Anda tidak ingin mengonfigurasi parameter input untuk layanan, atur nilainya menjadi Args={}.

Penting Jika data TSL bertipe float atau double, nilai parameter yang sesuai dengan data TSL tersebut harus mengandung setidaknya satu tempat desimal. Contoh: 10.0 dan 11.1.
DeviceName.NRepeatListYadevice1

Nama perangkat yang layanannya dipanggil. Anda dapat menentukan hingga 100 nama perangkat.

IdentifierStringYaSet

Identifier layanan.

Untuk melihat identifier layanan, Anda dapat menggunakan salah satu metode berikut:

  • Masuk ke Konsol IoT Platform. Pada tab Define Feature produk tempat perangkat tersebut terdaftar, Anda dapat melihat identifier-nya.
  • Panggil operasi QueryThingModel dan lihat identifier dalam informasi TSL yang dikembalikan.
Catatan Jika suatu layanan bernama testService termasuk dalam modul kustom bernama testFb, Anda dapat mengatur parameter ini menjadi testFb:testService. Modul kustom ini bukan modul default.
ProductKeyStringYaa1BwAGV****

ProductKey dari Produk yang menjadi milik Perangkat tersebut.

IotInstanceIdStringTidakiot_instc_pu****_c*-v64********

ID instans IoT. Anda dapat melihat ID instans tersebut pada halaman Overview di konsol IoT Platform.

Penting
  • Jika instans Anda memiliki ID, Anda harus menentukan ID tersebut untuk parameter ini. Jika tidak, panggilan akan gagal.
  • Jika tidak ada halaman Overview atau ID yang dihasilkan untuk instans Anda, Anda tidak perlu mengonfigurasi parameter ini.

Untuk informasi selengkapnya, lihat Ikhtisar instans.

QosIntegerTidak1

Tingkat quality of service (QoS) dari pesan. Nilai yang valid:

  • 0 (default): Sistem mengirim pesan paling banyak satu kali.
  • 1: Sistem mengirim pesan paling sedikit satu kali. Jika respons PUBACK tidak dikembalikan setelah Anda memublikasikan pesan QoS 1, pesan tersebut akan dikirim ulang ke Perangkat saat Perangkat terhubung kembali ke Platform IoT.

Selain parameter permintaan khusus operasi di atas, Anda harus mengonfigurasi parameter permintaan umum saat memanggil operasi ini. Untuk informasi selengkapnya, lihat Common parameters.

Parameter respons

ParameterTypeContohDeskripsi
CodeStringiot.system.SystemException

Kode kesalahan yang dikembalikan jika panggilan gagal. Untuk informasi selengkapnya mengenai kode kesalahan, lihat Error codes.

ErrorMessageStringA system exception occurred.

Pesan error yang dikembalikan jika panggilan gagal.

RequestIdStringE55E50B7-40EE-4B6B-8BBE-D3ED55CCF565

ID permintaan.

SuccessBooleantrue

Menunjukkan apakah panggilan berhasil atau tidak. Nilai yang valid:

  • true: Panggilan berhasil. Namun, hasil ini tidak menunjukkan bahwa layanan telah dieksekusi. Untuk memperoleh hasil eksekusi, lihat log Perangkat.
  • false: Panggilan gagal.

Contoh

Contoh permintaan

https://iot.cn-shanghai.aliyuncs.com/?Action=InvokeThingsService
&Args=%7B%20%20%20%20%20%22walk%22%3A%22a~z%22%2C%20%20%20%20%20%22city%22%3A%22shanghai%22%20%7D
&DeviceName.1=1102andriod02
&DeviceName.2=1102android01
&Identifier=TimeReset
&ProductKey=a1hWjHD****
&<Common request parameters>

Contoh respons sukses

Format XML

<InvokeThingsServiceResponse>
  <RequestId>059C3274-6197-4BEC-95E4-49A076330E57</RequestId>
  <Success>true</Success>
</InvokeThingsServiceResponse>

Format JSON

{
  "RequestId": "059C3274-6197-4BEC-95E4-49A076330E57",
  "Success": true
}

Kode kesalahan

Untuk daftar kode kesalahan, lihat Service error codes.