AWS IoT Events referensi untuk input dan variabel dalam ekspresi - AWS IoT Events

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

AWS IoT Events referensi untuk input dan variabel dalam ekspresi

Masukan

$input.input-name.path-to-data

input-nameadalah masukan yang Anda buat menggunakan CreateInputtindakan.

Misalnya, jika Anda memiliki masukan bernama TemperatureInput yang Anda tetapkan inputDefinition.attributes.jsonPath entri, nilainya mungkin muncul di bidang yang tersedia berikut.

{ "temperature": 78.5, "date": "2018-10-03T16:09:09Z" }

Untuk mereferensikan nilai temperature bidang, gunakan perintah berikut.

$input.TemperatureInput.temperature

Untuk bidang yang nilainya adalah array, Anda dapat mereferensikan anggota array menggunakan[n]. Misalnya, diberikan nilai-nilai berikut:

{ "temperatures": [ 78.4, 77.9, 78.8 ], "date": "2018-10-03T16:09:09Z" }

Nilai 78.8 dapat direferensikan dengan perintah berikut.

$input.TemperatureInput.temperatures[2]
Variabel

$variable.variable-name

variable-nameIni adalah variabel yang Anda definisikan menggunakan CreateDetectorModeltindakan.

Misalnya, jika Anda memiliki variabel bernama TechnicianID yang Anda definisikan menggunakandetectorDefinition.states.onInputEvents.actions.setVariable.variableName, Anda dapat mereferensikan nilai (string) yang terakhir diberikan ke variabel dengan perintah berikut.

$variable.TechnicianID

Anda dapat mengatur nilai variabel hanya menggunakan setVariable tindakan. Anda tidak dapat menetapkan nilai untuk variabel dalam ekspresi. Variabel tidak dapat di-unset. Misalnya, Anda tidak dapat menetapkan nilainyanull.

catatan

Dalam referensi yang menggunakan pengidentifikasi yang tidak mengikuti pola (ekspresi reguler)[a-zA-Z][a-zA-Z0-9_]*, Anda harus menyertakan pengidentifikasi tersebut di backticks (). ` Misalnya, referensi ke input bernama MyInput dengan bidang bernama _value harus menentukan bidang ini sebagai$input.MyInput.`_value`.

Saat Anda menggunakan referensi dalam ekspresi, periksa hal berikut:

  • Bila Anda menggunakan referensi sebagai operan dengan satu atau beberapa operator, pastikan semua tipe data yang Anda referensikan kompatibel.

    Misalnya, dalam ekspresi berikut, integer 2 adalah operan dari kedua operator == dan&&. Untuk memastikan bahwa operan kompatibel, $variable.testVariable + 1 dan $variable.testVariable harus mereferensikan bilangan bulat atau desimal.

    Selain itu, integer 1 adalah operan dari operator. + Oleh karena itu, $variable.testVariable harus referensi bilangan bulat atau desimal.

    ‘$variable.testVariable + 1 == 2 && $variable.testVariable’
  • Bila Anda menggunakan referensi sebagai argumen yang diteruskan ke fungsi, pastikan bahwa fungsi tersebut mendukung tipe data yang Anda referensikan.

    Misalnya, timeout("time-name") fungsi berikut membutuhkan string dengan tanda kutip ganda sebagai argumen. Jika Anda menggunakan referensi untuk timer-name nilai, Anda harus referensi string dengan tanda kutip ganda.

    timeout("timer-name")
    catatan

    Untuk convert(type, expression) fungsi tersebut, jika Anda menggunakan referensi untuk type nilai, hasil evaluasi dari referensi Anda harusString,Decimal, atauBoolean.

AWS IoT Events ekspresi mendukung tipe data integer, desimal, string, dan Boolean. Tabel berikut menyediakan daftar pasangan jenis yang tidak kompatibel.

Pasangan tipe yang tidak kompatibel

Integer, string

Bilangan bulat, Boolean

Desimal, string

Desimal, Boolean

Tali, Boolean