คู่มือนักพัฒนา & API
1. เริ่มต้นใช้งาน
1.1 การเตรียมตัว
ขั้นตอนที่ 1 โปรดตรวจสอบว่าเกตเวย์เปิดเครื่องและทำงานตามปกติ
ขั้นตอนที่ 2 ตรวจสอบให้แน่ใจว่าเกตเวย์และพีซีเชื่อมต่อกับ LAN เดียวกัน จากนั้นป้อน URL ของ CUBE ในเบราว์เซอร์ของคุณ
หมายเหตุ: หากคุณมีเกตเวย์หลายเครื่อง คุณสามารถรับที่อยู่ IP ที่เกี่ยวข้องเพื่อเข้าถึงเกตเวย์ที่ระบุได้ด้วยสองวิธีด้านล่าง
เข้าสู่ระบบเราเตอร์ไร้สายของคุณและตรวจสอบที่อยู่ IP ของเกตเวย์ใน DHCP
CUBE รองรับการค้นหาแบบท้องถิ่นผ่าน mDNS
1.2 การเริ่มต้น
เรียกอินเทอร์เฟซ [Access Token] แล้วได้รับการตอบกลับข้อผิดพลาด แจ้งให้คลิก <เสร็จสิ้น> โปรดทราบว่าหลังจากกดแล้ว การเข้าถึงอินเทอร์เฟซจะมีผลไม่เกิน 5 นาที
// คำขอ
curl --location --request GET 'http://<ip address>/open-api/V2/rest/bridge/access_token' --header 'Content-Type: application/json'
// การตอบกลับ
{
"error": 401,
"data": {},
"message": "link button not pressed"
}คลิก <เสร็จสิ้น> และเรียกอินเทอร์เฟซ [Access Token] อีกครั้ง การตอบกลับสำเร็จและได้รับโทเค็น
ยืนยันโทเค็น เรียกอินเทอร์เฟซ [Get Device List] การตอบกลับสำเร็จและได้รับรายการอุปกรณ์
วิธีรับโทเค็นการเข้าถึง CUBE: หลังจากเรียกอินเทอร์เฟซ [Access Token] หน้าคอนโซลเว็บของ CUBE จะมีป๊อปอัพแจ้งให้ผู้ใช้ยืนยันการรับข้อมูลรับรองการเรียกอินเทอร์เฟซ
หมายเหตุ: หากคุณเปิดหน้าคอนโซลเว็บ CUBE มากกว่าหนึ่งหน้า ป๊อปอัพยืนยันจะปรากฏบนหลายหน้าคอนโซลพร้อมกัน และป๊อปอัพของหน้าคอนโซลเว็บอื่นจะถูกปิดหลังจากคลิกยืนยันบนหนึ่งในหน้าคอนโซลเว็บ
2. แนวคิดหลัก
2.1 ที่อยู่ของอินเทอร์เฟซสำหรับการพัฒนา
อินเทอร์เฟซ Web API ของเกตเวย์มีสองวิธีการเข้าถึง (ตาม IP หรือชื่อโดเมน) โดยปกติรากทางคือ /open-api/V2/rest/< specific function module >
// การเข้าถึงทาง IP http:///open-api/V2/rest/bridge
// การเข้าถึงทางชื่อโดเมน http:///open-api/V2/rest/bridge
2.2 หมวดหมู่การแสดงผลอุปกรณ์ & ความสามารถ
**หมวดหมู่การแสดงผลของอุปกรณ์ (DisplayCategory). **หมวดหมู่การแสดงผลของอุปกรณ์ใช้ระบุหมวดหมู่เฉพาะของอุปกรณ์ เช่น สวิตช์ ปลั๊ก หลอดไฟ เป็นต้น ข้อมูลนี้จะกำหนดผลการแสดง UI ของอุปกรณ์ในเกตเวย์.
**ความสามารถของอุปกรณ์. **ความสามารถของอุปกรณ์ใช้เพื่ออธิบายฟังก์ชันย่อยเฉพาะของอุปกรณ์ เช่น การควบคุมพลังงาน การควบคุมความสว่าง การควบคุมอุณหภูมิสี เป็นต้น อุปกรณ์หนึ่งเครื่องสามารถรองรับความสามารถได้ 1 หรือหลายรายการ.
capability: อธิบายชื่อความสามารถ ซึ่งต้องไม่ซ้ำกันทั่วโลกและเป็นประเภทสตริง คำภาษาอังกฤษหลายคำควรคั่นด้วยยัติภังค์ ("-") ตัวอย่างเช่น:
"thermostat-target-setpoint".name: อธิบายหมวดหมู่ภายใต้ความสามารถ ซึ่งเป็นประเภทสตริงเช่นกัน คำภาษาอังกฤษหลายคำควรคั่นด้วยยัติภังค์ ("-") ตัวอย่างเช่น:
"auto-mode","manual-mode".permission: อธิบายสิทธิ์ที่เกี่ยวข้องกับความสามารถ ประเภทเป็นสตริง จัดรูปแบบเป็นรหัสเลขฐานสอง 8421 ตัวอย่างได้แก่:
สามารถควบคุมอุปกรณ์ได้:
"1000"สามารถปรับแต่งอุปกรณ์ได้:
"0010"สามารถควบคุมและปรับแต่งอุปกรณ์ได้:
"1010"สามารถควบคุมและรายงานอุปกรณ์ได้:
"1100"
ความหมายของแต่ละบิต จากขวาไปซ้าย มีดังนี้: ⅰ. บิต 0: อนุญาตให้สอบถามอุปกรณ์ ⅱ. บิต 1: อนุญาตให้ปรับแต่งอุปกรณ์ ⅲ. บิต 2: อนุญาตให้อุปกรณ์รายงานข้อมูล ⅳ. บิต 3: อนุญาตให้ควบคุมอุปกรณ์
settings: อธิบายรายการการตั้งค่าสำหรับความสามารถ ซึ่งเป็นประเภทออบเจ็กต์และรวมคำอธิบายของแต่ละรายการการตั้งค่า ⅰ. key: อธิบายชื่อรายการการตั้งค่า ซึ่งเป็นประเภทสตริง คำภาษาอังกฤษหลายคำควรเขียนแบบ camelCase ตัวอย่างเช่น: "temperatureUnit". ⅱ. value: อธิบายเนื้อหาของรายการการตั้งค่า ข้อกำหนดเฉพาะระบุไว้ในตารางด้านล่าง
permission
string
N
อธิบายสิทธิ์สำหรับรายการการตั้งค่า
ค่าที่เป็นไปได้ (ตัวเลือก):
อนุญาตให้แก้ไขรายการการตั้งค่านี้:
"10"อนุญาตให้ดูรายการการตั้งค่านี้:
"01"อนุญาตทั้งการแก้ไขและการดูรายการการตั้งค่านี้:
"11"
คำอธิบายบิต:
บิต 0: อนุญาตให้ดูรายการการตั้งค่านี้
บิต 1: อนุญาตให้แก้ไขรายการการตั้งค่า | | type | string | N | อธิบายประเภทข้อมูลของค่ารายการการตั้งค่า ค่าที่เป็นไปได้ (ตัวเลือก):
"enum""numeric""object""boolean""string"
คำแนะนำเฉพาะตามประเภท:
เมื่อ
**type = enum**:จะส่งเสียงทันที (ถ้ารองรับ)
valueฟิลด์ (อธิบายค่ารายการการตั้งค่า) จำเป็นถ้าpermissionอนุญาตให้แก้ไข ("10"หรือ"11").จะส่งเสียงทันที (ถ้ารองรับ)
default(อธิบายค่ามาตรฐานของรายการการตั้งค่า) และvalues(อธิบายค่าที่เลือกได้สำหรับรายการการตั้งค่า) ฟิลด์เป็นแบบไม่บังคับ
เมื่อ
**type = numeric**:จะส่งเสียงทันที (ถ้ารองรับ)
valueฟิลด์จำเป็นถ้าpermissionอนุญาตให้แก้ไข ("10"หรือ"11").ฟิลด์ต่อไปนี้เป็นแบบไม่บังคับ:
min(อธิบายค่าต่ำสุดของรายการการตั้งค่า)max(อธิบายค่าสูงสุดของรายการการตั้งค่า)step(อธิบายค่าก้าวสำหรับรายการการตั้งค่า)precision(อธิบายความละเอียด)unit(อธิบายหน่วยของรายการการตั้งค่า)default(อธิบายค่าเริ่มต้น)
เมื่อ
**type = object**:จะส่งเสียงทันที (ถ้ารองรับ)
valueฟิลด์จำเป็นถ้าpermissionอนุญาตให้แก้ไข ("10"หรือ"11").จะส่งเสียงทันที (ถ้ารองรับ)
defaultฟิลด์เป็นแบบไม่บังคับ
เมื่อ
**type = boolean**:จะส่งเสียงทันที (ถ้ารองรับ)
valueฟิลด์จำเป็นถ้าpermissionอนุญาตให้แก้ไข ("10"หรือ"11").จะส่งเสียงทันที (ถ้ารองรับ)
defaultฟิลด์เป็นแบบไม่บังคับ
เมื่อ
**type = string**:จะส่งเสียงทันที (ถ้ารองรับ)
valueฟิลด์จำเป็นถ้าpermissionอนุญาตให้แก้ไข ("10"หรือ"11").จะส่งเสียงทันที (ถ้ารองรับ)
defaultฟิลด์เป็นแบบไม่บังคับ. |
3. Web API
ประเภทของข้อมูล
string
ประเภทข้อมูลสตริง เข้ารหัสเป็น UTF8
number
ประเภทข้อมูลตัวเลข รูปแบบทศนิยมคู่ความแม่นยำ 64 บิต IEEE 754
int
ประเภทข้อมูลจำนวนเต็ม
object
ประเภทข้อมูลออบเจ็กต์ ออบเจ็กต์ที่เป็นไปตาม JSON
string[]
อาร์เรย์ของสตริง
int[]
อาร์เรย์ของจำนวนเต็ม
object[]
อาร์เรย์ของออบเจ็กต์
bool
บูลีน
date
สตริงเวลา รูปแบบสตริงเป็น ISO (รูปแบบขยาย ISO 8601): YYYY-MM-DDTHH:mm:ss.sssZ เขตเวลาเป็น UTC เสมอ และระบุด้วยคำต่อท้าย "Z"
ผลลัพธ์การตอบกลับทั่วไป
error
int
N
รหัสข้อผิดพลาด:
0: สำเร็จ
400: พารามิเตอร์ผิดพลาด
401: การตรวจสอบสิทธิ์ล้มเหลว
500: ข้อยกเว้นเซิร์ฟเวอร์
data
object
N
ตัวเนื้อหาข้อมูลการตอบกลับ
message
string
N
คำอธิบายการตอบกลับ:
เมื่อ error เท่ากับ 0 เนื้อหาคือ success
เมื่อ error ไม่เท่ากับ 0 จะเป็นสตริงที่ไม่ว่าง และเนื้อหาคือคำอธิบายข้อผิดพลาด
ตัวอย่างการตอบกลับ:
รายการทรัพยากร
เสียงที่รองรับ
- alert1 (เสียงเตือน 1)
alert2 (เสียงเตือน 2)
alert3 (เสียงเตือน 3)
alert4 (เสียงเตือน 4)
alert5 (เสียงเตือน 5)
doorbell1 (เสียงกริ่ง 1)
doorbell2 (เสียงกริ่ง 2)
doorbell3 (เสียงกริ่ง 3)
doorbell4 (เสียงกริ่ง 4)
doorbell5 (เสียงกริ่ง 5)
alarm1 (เสียงสัญญาณเตือน 1)
alarm2 (เสียงสัญญาณเตือน 2)
alarm3 (เสียงสัญญาณเตือน 3)
alarm4 (เสียงสัญญาณเตือน 4)
alarm5 (เสียงสัญญาณเตือน 5) | | รองรับ deep | - bootComplete (การเริ่มระบบเสร็จสิ้น)
networkConnected (เชื่อมต่อเครือข่ายแล้ว)
networkDisconnected (การเชื่อมต่อเครือข่ายขาด)
systemShutdown (ปิดระบบ) -deviceDiscovered (ค้นพบอุปกรณ์)
system Armed (ระบบตั้งสถานะติดอาวุธเปิดใช้งาน)
system Disarmed (ระบบตั้งสถานะติดอาวุธปิดใช้งาน)
factoryReset (รีเซ็ตอุปกรณ์) |
3.1 ฟังก์ชันของเกตเวย์
a. Access Token
อนุญาตให้ผู้ใช้ขอโทเค็นการเข้าถึง
หมายเหตุ: โทเค็นจะถูกล้างหลังจากรีเซ็ตอุปกรณ์
หมายเหตุ: หลังจากได้รับโทเค็น คุณต้องกดปุ่มอีกครั้งเพื่อรับโทเค็นใหม่สำเร็จ
:::tips
URL:
/open-api/V2/rest/bridge/access_tokenวิธีการ:
GETส่วนหัว:
Content-Type: application/json ::: พารามิเตอร์คำขอ:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
app_name
string
Y
คำอธิบายชื่อแอปพลิเคชัน
การตอบกลับข้อมูลสำเร็จ:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
token
string
N
โทเค็นการเข้าถึงอินเทอร์เฟซ ใช้งานได้นาน โปรดบันทึกไว้
app_name
string
Y
คำอธิบายชื่อแอปพลิเคชัน
:::tips เงื่อนไข: ผู้ใช้กด < command key > และเข้าถึงอินเทอร์เฟซนี้ภายในเวลาที่มีผล **รหัสสถานะ: **200 OK ::: ตัวอย่างการตอบกลับ:
การตอบกลับข้อมูลล้มเหลว: ออบเจ็กต์ว่างเปล่า :::tips เงื่อนไข:ผู้ใช้ยังไม่ได้กด < command key > หรือเวลาที่มีผลหมดอายุ **รหัสสถานะ: ** 200 OK ::: ตัวอย่างการตอบกลับ:
b. ดึงสถานะของเกตเวย์
อนุญาตให้ผู้ใช้ที่ได้รับอนุญาตได้รับสถานะของเกตเวย์ผ่านอินเทอร์เฟซนี้ :::tips
URL:
/open-api/V2/rest/bridge/runtimeวิธีการ:
GETส่วนหัว:
Content-Type: application/json
Autorization: Bearer ::: พารามิเตอร์คำขอ: ไม่มี การตอบกลับข้อมูลสำเร็จ:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
ram_used
int
N
เปอร์เซ็นต์การใช้แรม [0-100]
cpu_used
int
N
เปอร์เซ็นต์การใช้ CPU [0-100]
power_up_time
date
N
เวลาที่เปิดเครื่องล่าสุด
cpu_temp
int
N
อุณหภูมิ CPU:
หน่วย: เซลเซียส
cpu_temp_unit
string
N
หน่วยอุณหภูมิ CPU:
ตัวเลือก
ค่าที่เป็นไปได้:'c', 'f'
sd_card_used
int
Y
การใช้งานการ์ด SD (เปอร์เซ็นต์):
ช่วง:[0-100] มีความละเอียดทศนิยมหนึ่งตำแหน่ง
*หมายเหตุ: หากไม่ได้ใส่การ์ด SD หรือไม่ได้ฟอร์แมต ค่าจะเป็นค่าว่าง
:::tips เงื่อนไข: พารามิเตอร์คำขอถูกต้อง และการตรวจสอบตัวตนของผู้ใช้ผ่าน **รหัสสถานะ: **200 OK ::: ตัวอย่างการตอบกลับ:
c. การตั้งค่าเกตเวย์
อนุญาตให้ผู้ใช้ที่ได้รับอนุญาตตั้งค่าเกตเวย์ผ่านอินเทอร์เฟซนี้ :::tips
URL:
/open-api/V2/rest/bridge/configวิธีการ:
PUTส่วนหัว:
Content-Type: application/json
Autorization: Bearer ::: พารามิเตอร์คำขอ:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
volume
int
Y
ระดับเสียงระบบ [0-100]
การตอบกลับข้อมูลสำเร็จ: ออบเจ็กต์ว่าง {} :::tips เงื่อนไข: พารามิเตอร์คำขอถูกต้อง และการตรวจสอบตัวตนของผู้ใช้ผ่าน **รหัสสถานะ: **200 OK ::: ตัวอย่างการตอบกลับ:
d. ดึงข้อมูลเกตเวย์
อนุญาตให้ผู้ใช้ที่ได้รับอนุญาตดึงข้อมูลเกตเวย์ผ่านอินเทอร์เฟซนี้ :::tips
URL:
/open-api/V2/rest/bridgeวิธีการ:
GETส่วนหัว:
Content-Type: application/json ::: พารามิเตอร์คำขอ:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
ip
string
N
ที่อยู่ ip
mac
string
N
ที่อยู่ mac
domain
string
Y
โดเมนบริการของเกตเวย์
fw_version
string
N
เวอร์ชันเฟิร์มแวร์
name
string
N
ชื่ออุปกรณ์
การตอบกลับข้อมูลสำเร็จ: ออบเจ็กต์ว่าง {} :::tips เงื่อนไข: ไม่มี **รหัสสถานะ: **200 OK ::: ตัวอย่างการตอบกลับ:
e. ปิดเสียงเกตเวย์
อนุญาตให้ผู้ใช้ที่ได้รับอนุญาตปิดเสียงเกตเวย์ผ่านอินเทอร์เฟซนี้ :::tips
URL:
/open-api/v2/rest/bridge/muteวิธีการ:
PUTส่วนหัว:
Content-Type: application/json
Authorization: Bearer ::: พารามิเตอร์คำขอ: ไม่มี การตอบกลับข้อมูลสำเร็จ: ออบเจ็กต์ว่าง {} :::tips เงื่อนไข: พารามิเตอร์คำขอถูกต้อง และการตรวจสอบตัวตนของผู้ใช้ผ่าน **รหัสสถานะ: **200 OK ::: ตัวอย่างการตอบกลับ:
f. ยกเลิกการปิดเสียงเกตเวย์
อนุญาตให้ผู้ใช้ที่ได้รับอนุญาตยกเลิกการปิดเสียงเกตเวย์ผ่านอินเทอร์เฟซนี้ :::tips
URL:
/open-api/v2/rest/bridge/unmuteวิธีการ:
PUTส่วนหัว:
Content-Type: application/json
Authorization: Bearer ::: พารามิเตอร์คำขอ: ไม่มี การตอบกลับข้อมูลสำเร็จ: ออบเจ็กต์ว่าง {} :::tips เงื่อนไข: พารามิเตอร์คำขอถูกต้อง และการตรวจสอบตัวตนของผู้ใช้ผ่าน **รหัสสถานะ: **200 OK ::: ตัวอย่างการตอบกลับ:
g. ยกเลิกสัญญาณเตือนของเกตเวย์
อนุญาตให้ผู้ใช้ที่ได้รับอนุญาตปิดสถานะเสียงเตือนบนเกตเวย์ผ่านอินเทอร์เฟซนี้ :::tips
URL:
/open-api/v2/rest/bridge/cancel_alarmวิธีการ:
PUTส่วนหัว:
Content-Type: application/json
Authorization: Bearer ::: พารามิเตอร์คำขอ: ไม่มี การตอบกลับข้อมูลสำเร็จ: ออบเจ็กต์ว่าง {} :::tips เงื่อนไข: พารามิเตอร์คำขอถูกต้อง และการตรวจสอบตัวตนของผู้ใช้ผ่าน **รหัสสถานะ: **200 OK ::: ตัวอย่างการตอบกลับ:
3.2 ฟังก์ชันฮาร์ดแวร์
a. รีสตาร์ทเกตเวย์
อนุญาตให้ผู้ใช้ที่ได้รับอนุญาตรีสตาร์ทเกตเวย์ผ่านอินเทอร์เฟซนี้ :::tips
URL:
/open-api/V2/rest/hardware/rebootวิธีการ:
POSTส่วนหัว:
Content-Type: application/json
Autorization: Bearer ::: พารามิเตอร์คำขอ: ไม่มี การตอบกลับข้อมูลสำเร็จ: ออบเจ็กต์ว่าง {} :::tips เงื่อนไข: พารามิเตอร์คำขอถูกต้อง และการตรวจสอบตัวตนของผู้ใช้ผ่าน **รหัสสถานะ: **200 OK :::
b. ควบคุมลำโพง
อนุญาตให้ผู้ใช้ที่ได้รับอนุญาตควบคุมลำโพงผ่านอินเทอร์เฟซนี้ :::tips
URL:
/open-api/V2/rest/hardware/speakerวิธีการ:
POSTส่วนหัว:
Content-Type: application/json
Authorization: Bearer ::: พารามิเตอร์คำขอ:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
type
string
N
พารามิเตอร์ทางเลือก: 1.play_sound (เล่นเสียง) 2.play_beep (เล่นเสียงบี๊ป)
sound
SoundObject
Y (N หาก type เป็น play_sound.)
เสียง
beep
BeepObject
Y (N หาก type เป็น play_beep.)
เสียงบี๊ป
SoundObject
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
name
string
N
ชื่อเสียง ค่าที่รองรับสามารถตรวจสอบได้ใน [Resource List - Supported sound]
volume
int
N
ระดับเสียงของเสียง [0-100]
countdown
int
N
ระยะเวลาที่ลำโพงเล่นเสียง และจะหยุดเล่นโดยอัตโนมัติเมื่อครบเวลา หน่วย: วินาที [0,1799]
BeepObject
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
name
string
N
ชื่อ deep ค่าที่รองรับสามารถตรวจสอบได้ใน [Resource List - Supported deep]
volume
int
N
ระดับเสียง deep [0-100]
การตอบกลับข้อมูลสำเร็จ: ออบเจ็กต์ว่าง {} :::tips เงื่อนไข: พารามิเตอร์คำขอถูกต้อง และการตรวจสอบตัวตนของผู้ใช้ผ่าน **รหัสสถานะ: ** 200 OK ::: ตัวอย่างการตอบกลับ:
3.3 ฟังก์ชันการจัดการอุปกรณ์
a. ประเภทอุปกรณ์ที่รองรับ
ประเภทอุปกรณ์
ค่า
รุ่น iHost
ปลั๊ก
plug
≥ 2.1.0
สวิตช์
switch
≥ 2.1.0
หลอดไฟ
light
≥ 2.1.0
ผ้าม่าน
curtain
≥ 2.1.0
เซ็นเซอร์ประตู/หน้าต่าง
contactSensor
≥ 2.1.0
เซ็นเซอร์การเคลื่อนไหว
motionSensor
≥ 2.1.0
เซ็นเซอร์อุณหภูมิ
temperatureSensor
≥ 2.1.0
เซ็นเซอร์ความชื้น
humiditySensor
≥ 2.1.0
เซ็นเซอร์อุณหภูมิและความชื้น
temperatureAndHumiditySensor
≥ 2.1.0
เครื่องตรวจจับการรั่วของน้ำ
waterLeakDetector
≥ 2.1.0
เครื่องตรวจจับควัน
smokeDetector
≥ 2.1.0
ปุ่มไร้สาย
button
≥ 2.1.0
กล้อง
camera
≥ 2.1.0
เซ็นเซอร์ทั่วไป
sensor
≥ 2.1.0
เซ็นเซอร์ทั่วไป
sensor
≥ 2.1.0
โคมพัดลม
fanLight
≥ 2.1.0
เครื่องปรับอากาศ
airConditioner
≥ 2.1.0
พัดลม
fan
≥ 2.1.0
เทอร์โมสตัท
thermostat
≥ 2.1.0
b. ความสามารถของอุปกรณ์ที่รองรับ
สวิตช์พลังงาน (power):
ตัวอย่างการประกาศความสามารถ:
แอตทริบิวสถานะ:
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
เปิด:
ปิด:
สวิตช์ช่อง (สลับ):
ตัวอย่างการประกาศความสามารถ:
ตัวอย่างส่วนประกอบเดี่ยว:
ตัวอย่างหลายส่วนประกอบ:
แอตทริบิวสถานะ:
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
รูปแบบการสลับ:
การนับนิ้วช่อง (toggle-inching):
ตัวอย่างการประกาศความสามารถ:
แอตทริบิวสถานะ
ไม่มี
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม)
ไม่มี
การปรับความสว่าง (brightness):
ตัวอย่างการประกาศความสามารถ:
แอตทริบิวสถานะ:
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
ตั้งความสว่างเป็น 80% (0 มืดสุด และ 100 สว่างสุด)
การปรับอุณหภูมิสี (color-temperature):
ตัวอย่างการประกาศความสามารถ:
แอตทริบิวสถานะ:
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
ปรับอุณหภูมิสีเป็น 50%:
การปรับสี (color-rgb):
ตัวอย่างการประกาศความสามารถ:
แอตทริบิวสถานะ:
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
ตั้งค่าสีเป็นสีม่วง:
การปรับเปอร์เซ็นต์ (percentage):
ตัวอย่างการประกาศความสามารถ:
แอตทริบิวสถานะ:
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
ปรับเป็น 40%:
การควบคุมมอเตอร์ (motor-control):
ตัวอย่างการประกาศความสามารถ:
แอตทริบิวสถานะ:
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
เปิดมอเตอร์:
การกลับทิศทางมอเตอร์ (motor-reverse):
ตัวอย่างการประกาศความสามารถ:
แอตทริบิวสถานะ:
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
ตั้งมอเตอร์เป็นเดินหน้า:
การปรับเทียบมอเตอร์ (motor-clb)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การรายงานสถานะ):
รายงานสถานะมอเตอร์กำลังปรับเทียบ:
สถานะการเปิดเครื่อง (startup)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
ตั้งค่าสถานะพลังงานให้เป็น เปิดเสมอ:
การเปิดใช้งานตื่นตัว (identify)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การรายงานสถานะ & คำสั่งควบคุม):
ตั้งเวลาการเปิดใช้งานตื่นตัว:
รายงานสถานะการเปิดใช้งาน:
สวิตช์สถิติกำลังไฟแบบเรียลไทม์ (power-consumption)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
เริ่ม/หยุดสถิติเสียเวลาเรียลไทม์:
สอบถามการใช้พลังงานตามช่วงเวลา:
ตอบด้วยผลสถิติเภ within ช่วงเวลา:
โปรโตคอล (การรายงานสถานะ & คำสั่งควบคุม):
เริ่มสถิติเกี่ยวกับเรียลไทม์:
หยุดสถิติเกี่ยวกับเรียลไทม์:
รับการใช้พลังงานในอดีต:
รับการใช้พลังงานแบบเรียลไทม์:
การตรวจจับโหมดอุณหภูมิและความชื้น (thermostat-mode-detect)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
รูปแบบ:
ตัวอย่าง:
โหมดเทอร์โมสตัท (thermostat-mode)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
สถานะการฟื้นฟูแบบปรับตัวของเทอร์โมสตัท (thermostat/adaptive-recovery-status)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
การตั้งค่าอุณหภูมิสู่เป้าหมายของโหมดเทอร์โมสตัท (thermostat-target-setpoint)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
การตรวจจับเซนเซอร์ (detect)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
การตรวจจับอุณหภูมิ (temperature)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
การตรวจจับความชื้น (humidity)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
การตรวจจับแบตเตอรี่ (battery)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
การตรวจจับปุ่มเดี่ยว (press)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
การตรวจจับปุ่มหลายปุ่ม (multi-press)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
การตรวจจับความแรงสัญญาณ (rssi)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
การตรวจจับการงัดแงะ (tamper-alert)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
การตรวจจับระดับแสง (illumination-level)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
การตรวจจับแรงดันไฟฟ้า (voltage)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
การตรวจจับกระแสไฟฟ้า (electric-current)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
การตรวจจับกำลังไฟฟ้า (electric-power)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
การตรวจจับความผิดปกติ (fault)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
เครื่องตัดเกณฑ์ (threshold-breaker)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ)
ไม่มี
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม)
ไม่มี
ฟังก์ชันนิ้ว (inching)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
ไม่มี
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
ไม่มี
สตรีมกล้อง (camera-stream)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
ไม่มี
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
ไม่มี
การควบคุมโหมด (mode)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
การตรวจจับก๊าซคาร์บอนไดออกไซด์ (co2)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
การตรวจจับแสง (illumination)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
การตรวจจับควัน (smoke)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
การตรวจจับการเปิด/ปิดแม่เหล็กประตู (contact)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
ตรวจจับการเคลื่อนไหว (motion)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
ตรวจจับการรั่วไหลของน้ำ (water-leak)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
สวิตช์ตรวจจับหน้าต่าง (window-detection)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
สวิตช์ล็อกเด็ก (child-lock)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
สวิตช์ป้องกันแรงลมตรง (anti-direct-blow)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
สวิตช์สวิงแนวนอน (horizontal-swing)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
สวิตช์สวิงแนวตั้ง (vertical-swing)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
สวิตช์โหมดประหยัดพลังงาน (eco)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
สลับการกำหนดค่าเริ่มต้น (toggle-startup)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
ตรวจจับการถือค้าง (detect-hold)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
สลับการระบุ/การเปิดใช้งาน (toggle-identify)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
สวิตช์ตรวจจับแรงดันไฟฟ้า (toggle-voltage)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
การตรวจจับกระแสไฟฟ้าย่อย (toggle-electric-current)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
การตรวจจับกำลังไฟฟ้าย่อย (toggle-electric-power)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
สถิติการใช้พลังงานย่อย (toggle-power-consumption)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
เริ่ม/หยุดสถิติเสียเวลาเรียลไทม์:
สอบถามการใช้พลังงานตามช่วงเวลา:
การตอบกลับสำหรับการใช้พลังงานภายในช่วงเวลา:
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
เริ่มสถิติเกี่ยวกับเรียลไทม์:
หยุดสถิติเกี่ยวกับเรียลไทม์:
รับการใช้พลังงานในอดีต:
รับการใช้พลังงานแบบเรียลไทม์:
ตัวบ่งชี้คุณภาพลิงก์ (lqi)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
การตั้งค่าฟังก์ชัน (configuration)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
ระบบ (system)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
ความชื้น (moisture)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
ความกดอากาศ (barometric-pressure)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
ความเร็วลม (wind-speed)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
ทิศทางลม (wind-direction)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
ปริมาณน้ำฝน (rainfall)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
ดัชนีรังสียูวี (ultraviolet-index)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
ความนำไฟฟ้าไฟฟ้า (electrical-conductivity)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
กำลังส่ง (transmit-power)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
การตรวจจับ PM2.5 (pm25)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
ดัชนี VOC (voc-index)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
การตรวจจับก๊าซธรรมชาติ (gas)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
สถานะการทำงานของการชลประทาน (irrigation/work-status)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
การรายงานสถานะการทำงาน:
การสืบค้นสถานะการทำงาน:
ผลลัพธ์การสืบค้นสถานะการทำงาน:
โหมดการทำงานการชลประทาน (irrigation/work-mode)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
ตัวควบคุมการชลประทานอัตโนมัติ (irrigation/auto-controller)
ตัวอย่างการประกาศความสามารถ:
แอตทริบิว (สถานะ):
การตั้งเวลาแบบครั้งเดียวหรือแบบซ้ำ:
ปริมาณครั้งเดียวหรือแบบซ้ำ:
โปรโตคอล (การสอบถามสถานะ & คำสั่งควบคุม):
การตั้งเวลาแบบครั้งเดียวหรือแบบซ้ำ:
ปริมาณครั้งเดียวหรือแบบซ้ำ:
โหมดพรีเซ็ตที่รองรับ
ระดับพัดลม (fanLevel)
"low"
"medium"
"high"
โหมดเทอร์โมสตัท (thermostatMode)
"auto"
"manual"
โหมดเครื่องปรับอากาศ >= 1.11.0 (airConditionerMode)
"cool"
"heat"
"auto"
"fan"
"dry"
โหมดพัดลม >= 1.11.0 (fanMode)
"normal"
"sleep"
"child"
มุมแนวนอน >= 1.11.0 (horizontalAngle)
"30"
"60"
"90"
"120"
"180"
"360"
มุมแนวตั้ง >= 1.11.0 (verticalAngle)
"30"
"60"
"90"
"120"
"180"
"360"
ค. คำอธิบายแท็ก
คีย์พิเศษ toggle ถูกใช้เพื่อกำหนดชื่อของคอมโพเนนต์ย่อยแบบ toggle.
คีย์พิเศษ temperature_unit ใช้เพื่อกำหนดหน่วยอุณหภูมิ.
ง. รหัสข้อผิดพลาดพิเศษและคำอธิบาย
รหัสข้อผิดพลาด
คำอธิบาย
รุ่น iHost
110000
ซับอุปกรณ์/กลุ่มที่สอดคล้องกับ id ไม่มีอยู่จริง
≥2.1.0
110001
เกตเวย์อยู่ในสถานะการค้นหาอุปกรณ์ zigbee
≥2.1.0
110002
อุปกรณ์ในกลุ่มไม่มีความสามารถร่วมกัน
≥2.1.0
110003
จำนวนอุปกรณ์ไม่ถูกต้อง
≥2.1.0
110004
จำนวนกลุ่มไม่ถูกต้อง
≥2.1.0
110005
อุปกรณ์ออฟไลน์
≥2.1.0
110006
อัปเดตสถานะอุปกรณ์ล้มเหลว
≥2.1.0
110007
อัปเดตสถานะกลุ่มล้มเหลว
≥2.1.0
110008
ถึงจำนวนกลุ่มสูงสุดที่กำหนด สามารถสร้างได้สูงสุด 50 กลุ่ม
≥2.1.0
110009
ที่อยู่ IP ของอุปกรณ์กล้องไม่ถูกต้อง
≥2.1.0
110010
ข้อผิดพลาดการอนุญาตการเข้าถึงอุปกรณ์กล้อง
≥2.1.0
110011
ที่อยู่สตรีมของอุปกรณ์กล้องผิดพลาด
≥2.1.0
110012
การเข้ารหัสวิดีโอของอุปกรณ์กล้องไม่รองรับ
≥2.1.0
110013
อุปกรณ์มีอยู่แล้ว
≥2.1.0
110014
กล้องไม่รองรับการทำงานแบบออฟไลน์
≥2.1.0
110015
รหัสผ่านบัญชีไม่ตรงกับรหัสผ่านในที่อยู่สตรีม RTSP
≥2.1.0
110016
เกตเวย์อยู่ในสถานะการค้นหากล้อง onvif
≥2.1.0
110017
เกินจำนวนกล้องที่เพิ่มสูงสุด
≥2.1.0
110018
เส้นทางของกล้อง ESP ผิดพลาด
≥2.1.0
110019
การเข้าถึงที่อยู่บริการของอุปกรณ์บุคคลที่สามล้มเหลว
≥2.1.0
จ. ค้นหาซับอุปกรณ์
อนุญาตให้ผู้ใช้ที่ได้รับอนุญาตเปิดหรือปิดการค้นหาซับอุปกรณ์ของเกตเวย์ผ่านอินเทอร์เฟซนี้
💡หมายเหตุ: ขณะนี้รองรับการค้นหาซับอุปกรณ์ Zigbee เท่านั้น.
💡หมายเหตุ: ซับอุปกรณ์ Zigbee จะถูกเพิ่มโดยอัตโนมัติหลังการค้นหา ไม่จำเป็นต้องใช้หน้าจอ "เพิ่มซับอุปกรณ์ด้วยตนเอง" :::tips
URL:/open-api/V2/rest/devices/discovery
วิธีการ: PUT
ส่วนหัว:
Content-Type: application/json
Autorization: Bearer ::: พารามิเตอร์คำขอ:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
enable
boolean
N
true (เริ่มการจับคู่); false (หยุดการจับคู่)
type
string
N
ประเภทการค้นหา: Zigbee
การตอบกลับข้อมูลสำเร็จ: ออบเจ็กต์ว่าง {} :::tips เงื่อนไข: พารามิเตอร์คำขอถูกต้อง และการตรวจสอบตัวตนของผู้ใช้ผ่าน **รหัสสถานะ: ** 200 OK ::: ตัวอย่างการตอบกลับ:
ค. เพิ่มซับอุปกรณ์ด้วยตนเอง
อนุญาตให้ผู้ใช้ที่ได้รับอนุญาตเพิ่ม เดี่ยว ซับอุปกรณ์ผ่านอินเทอร์เฟซนี้.
หมายเหตุ: ขณะนี้รองรับเฉพาะกล้อง RTSP และกล้อง ESP32 เท่านั้น :::tips
URL:/open-api/V2/rest/devices
วิธีการ:POST
ส่วนหัว:
Content-Type: application/json
Autorization: Bearer ::: พารามิเตอร์คำขอ:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
name
string
N
ชื่อซับอุปกรณ์
display_category
string
N
ประเภทอุปกรณ์. รองรับเฉพาะกล้องเท่านั้น。
capabilities
CapabilityObject[]
N
รายการความสามารถ. เมื่อ display_category = camera, capabilities จะรวมเฉพาะความสามารถ camera-stream.
protocal
string
N
โปรโตคอลอุปกรณ์. RTSP; ESP32-CAM
manufacturer
string
N
ผู้ผลิต.
model
string
N
รุ่นอุปกรณ์
firmware_version
string
N
เวอร์ชันเฟิร์มแวร์ของอุปกรณ์
CapabilityObject
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
capability
string
N
ชื่อความสามารถ. รองรับเฉพาะ "camera-stream" เท่านั้น
permission
string
N
สิทธิ์ของอุปกรณ์. รองรับเฉพาะ read.
configuration
CameraStreamConfigurationObject
Y
การตั้งค่าสตรีมของกล้อง.
SettingsObject
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
streamSetting
StreamSettingObject
N
การตั้งค่าบริการสตรีม
StreamSettingObject
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
type
string
N
การตั้งค่าบริการสตรีม
permission
string
N
สิทธิ์ความสามารถ. รองรับเฉพาะ "11" (แก้ไขได้).
value
StreamSettingValueObject
N
ค่าการตั้งค่าเฉพาะ
StreamSettingValueObject
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
stream_url
string
N
รูปแบบ URL สตรีม
รูปแบบ:<schema>://<hostname>:<port>/<username>:<password>@<service_path>
ตัวเลือกสคีมา:
rtsp (โปรโตคอลสตรีมแบบเรียลไทม์)
http (Hypertext Transfer Protocol) — สำหรับอุปกรณ์ ESP32-CAM
*หมายเหตุ: กล้องบางรุ่นอาจไม่ต้องการชื่อผู้ใช้หรือรหัสผ่าน ในกรณีดังกล่าวสามารถละเว้น <username> และ <password> ฟิลด์จาก URL.
การตอบกลับข้อมูลสำเร็จ:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
serial_number
string
N
หมายเลขซีเรียลเฉพาะของอุปกรณ์
:::tips เงื่อนไข: พารามิเตอร์คำขอถูกต้อง และการตรวจสอบตัวตนของผู้ใช้ผ่าน **รหัสสถานะ: **200 OK ::: ตัวอย่างการตอบกลับ:
การตอบกลับข้อมูลล้มเหลว: วัตถุว่างเปล่า :::tips เงื่อนไข:
ข้อผิดพลาดการเข้าถึงที่อยู่สตรีมของกล้อง (รูปแบบผิด, การอนุญาตล้มเหลว, ข้อยกเว้นเครือข่าย เป็นต้น)
อุปกรณ์มีอยู่แล้ว
หากการเพิ่มอุปกรณ์เดี่ยวล้มเหลว จะคืนค่าทั้งหมดว่าเพิ่มอุปกรณ์ไม่สำเร็จ.
รหัสสถานะ: 200 OK รหัสข้อผิดพลาด: ● 110009 ที่อยู่ IP ของกล้องผิดพลาด ● 110010 การอนุญาตการเข้าถึงกล้องล้มเหลว ● 110011 ที่อยู่สตรีมของกล้องผิดพลาด ● 110012 การเข้ารหัสวิดีโอของกล้องไม่รองรับ ● 110013 อุปกรณ์มีอยู่แล้ว ::: ตัวอย่างการตอบกลับ:
ง. ดึงรายการซับอุปกรณ์
อนุญาตให้ผู้ใช้ที่ได้รับอนุญาตดึงรายการซับอุปกรณ์ของเกตเวย์ผ่านอินเทอร์เฟซนี้. :::tips
URL:/open-api/V2/rest/devices
วิธีการ: GET
ส่วนหัว:
Content-Type: application/json
Autorization: Bearer ::: พารามิเตอร์คำขอ: ไม่มี การตอบกลับข้อมูลสำเร็จ:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
device_list
ResponseDeviceObject[]
N
รายการอุปกรณ์
ResponseDeviceObject
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
serial_number
string
N
หมายเลขซีเรียลเฉพาะของอุปกรณ์
third_serial_number
string
"N" เมื่อมีการเชื่อมต่ออุปกรณ์ของบุคคลที่สาม, หากไม่ใช่จะแสดง "Y"
หมายเลขซีเรียลเฉพาะของอุปกรณ์บุคคลที่สาม
service_address
string
"N" เมื่อมีการเชื่อมต่ออุปกรณ์ของบุคคลที่สาม, หากไม่ใช่จะแสดง "Y"
ที่อยู่บริการของบุคคลที่สาม
name
string
N
ชื่ออุปกรณ์ หากไม่ได้เปลี่ยนชื่อ จะถูกแสดงโดยหน้าบริเวณหน้าแรกตามกฎการแสดงผลเริ่มต้น.
manufacturer
string
N
ผู้ผลิต
model
string
N
รุ่นอุปกรณ์
firmware_version
string
N
เวอร์ชันเฟิร์มแวร์. อาจเป็นสตริงว่างได้.
hostname
string
Y
ชื่อโฮสต์ของอุปกรณ์
mac_address
string
Y
ที่อยู่ MAC ของอุปกรณ์
app_name
string
Y
ชื่อของแอปพลิเคชันที่เป็นเจ้าของ หากมีการกรอก app_name เมื่อขอรับใบรับรองอินเทอร์เฟซสาธารณะ ต่อไปอุปกรณ์ทั้งหมดที่เชื่อมต่อผ่านใบรับรองจะถูกบันทึกลงในฟิลด์นี้.
display_category
string
N
หมวดหมู่อุปกรณ์
capabilities
CapabilityObject[]
N
ความสามารถของอุปกรณ์
protocol
string
"N" เมื่อมีการเชื่อมต่ออุปกรณ์ของบุคคลที่สาม, หากไม่ใช่จะแสดง "Y"
โปรโตคอลอุปกรณ์: zigbee, onvif, rtsp, esp32-cam
state
object
Y
วัตถุสถานะของอุปกรณ์. สำหรับตัวอย่างสถานะของความสามารถต่างๆ โปรดตรวจสอบ 【Support Device Capabilities】
tags
object
Y
รูปแบบ JSON คู่คีย์-ค่า ข้อมูลอุปกรณ์ที่กำหนดเอง ฟังก์ชันมีดังนี้:- ใช้เพื่อเก็บช่องของอุปกรณ์- ใช้เพื่อเก็บหน่วยอุณหภูมิ- ข้อมูลที่กำหนดเองสำหรับอุปกรณ์บุคคลที่สามอื่นๆ
ออนไลน์
boolean
N
สถานะออนไลน์: True หมายถึงออนไลน์ False หมายถึงออฟไลน์
ซับเน็ต
boolean
Y
ระบุว่าอยู่ในซับเน็ตเดียวกับเกตเวย์หรือไม่
CapabilityObject 💡หมายเหตุ: โปรดตรวจสอบตัวอย่างของความสามารถอุปกรณ์ที่รองรับ สำหรับ [Supported Device Capabilities].
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
capability
string
N
ชื่อความสามารถ รายละเอียดดูที่ [Supported Device Capabilities]
permission
string
N
สิทธิ์ของความสามารถ ค่าที่เป็นไปได้คือ "read" (อ่านได้), "write" (เขียนได้), "readWrite" (อ่านและเขียนได้).
configuration
object
Y
ข้อมูลการกำหนดค่าความสามารถ ปัจจุบันใช้ camera-stream ดูที่ [Supported Device Capabilities]
name
string
Y
ฟิลด์ name ใน toggle หมายเลขซับช่องที่ใช้ระบุอุปกรณ์หลายช่อง เช่น หาก name เป็น 1 หมายถึงช่องที่ 1
:::tips เงื่อนไข: พารามิเตอร์คำขอถูกต้อง และการตรวจสอบตัวตนของผู้ใช้ผ่าน **รหัสสถานะ: **200 OK ::: ตัวอย่างการตอบกลับ:
h. อัปเดตข้อมูลหรือสถานะของอุปกรณ์ที่ระบุ
อนุญาตให้ผู้ใช้ที่ได้รับอนุญาตแก้ไขข้อมูลพื้นฐานของซับอุปกรณ์และออกคำสั่งควบคุมผ่านอินเทอร์เฟซนี้ได้ :::tips
URL:/open-api/V2/rest/devices/{serial_number}
วิธีการ:PUT
ส่วนหัว:
Content-Type: application/json
Autorization: Bearer ::: พารามิเตอร์คำขอ:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
name
string
Y
ชื่ออุปกรณ์
tags
object
Y
รูปแบบ JSON คู่คีย์-ค่า ข้อมูลอุปกรณ์ที่กำหนดเอง
state
object
Y
วัตถุสถานะของอุปกรณ์ สำหรับตัวอย่างสถานะของความสามารถต่างๆ โปรดดู [Support Device Capabilities]
configuration
object
Y
ข้อมูลการกำหนดค่าความสามารถ ปัจจุบันรองรับการแก้ไขเฉพาะความสามารถ camera_stream เท่านั้น
การตอบกลับข้อมูลสำเร็จ: :::tips เงื่อนไข: พารามิเตอร์การร้องขอถูกต้องตามกฎหมาย และการยืนยันตัวตนของผู้ใช้ผ่านแล้ว **รหัสสถานะ: **200 OK รหัสข้อผิดพลาด:
110000 ซับอุปกรณ์/กลุ่มที่สอดคล้องกับ id ไม่มีอยู่ ::: ตัวอย่างการตอบกลับ:
i. ลบซับอุปกรณ์
อนุญาตให้ผู้ใช้ที่ได้รับอนุญาตลบซับอุปกรณ์ผ่านอินเทอร์เฟซนี้ได้ :::tips
URL:/open-api/V2/rest/devices/{serial_number}
วิธีการ:DELETE
ส่วนหัว:
Content-Type: application/json
Authorization: Bearer ::: พารามิเตอร์การร้องขอ:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
name
string
Y
ชื่ออุปกรณ์
tags
object
Y
คู่คีย์-ค่าในรูปแบบ JSON ใช้เก็บชื่อช่องของอุปกรณ์และข้อมูลอื่นๆ ของซับอุปกรณ์
state
object
Y
เปลี่ยนสถานะอุปกรณ์; สำหรับรายละเอียดโปรโตคอลเฉพาะ ดูที่ "Supported Device Capabilities"
capabilities
CapabilityObject []
Y
ข้อมูลการกำหนดค่าความสามารถ; ทุกความสามารถที่รองรับการตั้งค่าการกำหนดค่าสามารถแก้ไขได้ โปรดทราบว่าไม่สามารถเปลี่ยนแปลงสิทธิ์ได้
การตอบกลับข้อมูลสำเร็จ: :::tips เงื่อนไข: พารามิเตอร์การร้องขอถูกต้องตามกฎหมาย และการยืนยันตัวตนของผู้ใช้ผ่านแล้ว **รหัสสถานะ: **200 OK รหัสข้อผิดพลาด:
110000: ซับอุปกรณ์/กลุ่มที่สอดคล้องกับ ID ไม่มีอยู่
110006: การอัปเดตสถานะอุปกรณ์ล้มเหลว
110019: การเข้าถึงที่อยู่บริการอุปกรณ์บุคคลที่สามล้มเหลว
110024: การอัปเดตการกำหนดค่าอุปกรณ์ล้มเหลว ::: ตัวอย่างการตอบกลับ:
j. ลบซับอุปกรณ์
อนุญาตให้ผู้ใช้ที่ได้รับอนุญาตลบซับอุปกรณ์ผ่านอินเทอร์เฟซนี้ได้ :::tips
URL:
/open-api/v2/rest/devices/{serial_number}วิธีการ:
DELETEส่วนหัว:
Content-Type: application/json
Authorization: Bearer ::: พารามิเตอร์การร้องขอ: ไม่มี การตอบข้อมูลสำเร็จ: :::tips เงื่อนไข: พารามิเตอร์คำขอถูกต้อง และการตรวจสอบตัวตนของผู้ใช้ผ่าน **รหัสสถานะ: **200 OK ::: ตัวอย่างการตอบกลับ:
k. สอบถามสถานะอุปกรณ์
อนุญาตให้ผู้ใช้ที่ได้รับอนุญาตสอบถามสถานะอุปกรณ์ผ่านอินเทอร์เฟซนี้ได้ :::tips
URL:
/open-api/v2/rest/devices/:serial_number/query-state/{capability}วิธีการ:POST
ส่วนหัว:
Content-Type: application/json
Authorization: Bearer ::: พารามิเตอร์คำขอ:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
query_state
object
N
สอบถามสถานะอุปกรณ์; สำหรับรายละเอียดโปรโตคอลเฉพาะ ดูที่ "Supported Device Capabilities"
การตอบกลับข้อมูลสำเร็จ: :::tips เงื่อนไข: พารามิเตอร์คำขอถูกต้อง และการตรวจสอบตัวตนของผู้ใช้ผ่าน **รหัสสถานะ: **200 OK ::: ตัวอย่างการตอบกลับ:
3.4 การจัดการความปลอดภัย
a. ดึงรายการความปลอดภัย
อนุญาตให้ผู้ใช้ที่ได้รับอนุญาตแก้ไขการตั้งค่าเกตเวย์ผ่านอินเทอร์เฟซนี้ได้ :::tips
URL:
/open-api/v2/rest/securityวิธีการ:
GETส่วนหัว:
Content-Type: application/json
Authorization: Bearer ::: พารามิเตอร์การร้องขอ: ไม่มี การตอบข้อมูลสำเร็จ:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
security_list
ResponseSecurityObject[]
N
รายการอุปกรณ์ตอบสนอง
ResponseDeviceObject
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
sid
int
N
รหัสความปลอดภัย
name
string
N
ชื่อระบบความปลอดภัย
enable
bool
N
เปิดใช้งานหรือไม่
true เปิดใช้งาน
false ปิดใช้งาน |
:::tips เงื่อนไข: พารามิเตอร์คำขอถูกต้อง และการตรวจสอบตัวตนของผู้ใช้ผ่าน **รหัสสถานะ: **200 OK ::: ตัวอย่างการตอบกลับ:
b. เปิดใช้งานโหมดความปลอดภัยที่ระบุ
อนุญาตให้ผู้ใช้ที่ได้รับอนุญาตเปิดใช้งานโหมดความปลอดภัยที่ระบุผ่านอินเทอร์เฟซนี้ได้ :::tips
URL:
/open-api/v2/rest/security/{security_id}/enableวิธีการ:
PUTส่วนหัว:
Content-Type: application/json
Authorization: Bearer ::: พารามิเตอร์การร้องขอ: ไม่มี การตอบข้อมูลสำเร็จ: วัตถุว่าง {} :::tips เงื่อนไข: พารามิเตอร์คำขอถูกต้อง และการตรวจสอบตัวตนของผู้ใช้ผ่าน **รหัสสถานะ: **200 OK ::: ตัวอย่างการตอบกลับ:
c. ปิดใช้งานโหมดความปลอดภัยที่ระบุ
อนุญาตให้ผู้ใช้ที่ได้รับอนุญาตปิดใช้งานโหมดความปลอดภัยที่ระบุผ่านอินเทอร์เฟซนี้ได้ :::tips
URL:
/open-api/v2/rest/security/{security_id}/disableวิธีการ:
PUTส่วนหัว:
Content-Type: application/json
Authorization: Bearer ::: พารามิเตอร์การร้องขอ: ไม่มี การตอบข้อมูลสำเร็จ: วัตถุว่าง {} :::tips เงื่อนไข: พารามิเตอร์คำขอถูกต้อง และการตรวจสอบตัวตนของผู้ใช้ผ่าน **รหัสสถานะ: **200 OK ::: ตัวอย่างการตอบกลับ:
d. เปิดการตั้งค่าความปลอดภัยแบบคลิกเดียว
อนุญาตให้ผู้ใช้ที่ได้รับอนุญาตเปิดใช้งานโหมดการตั้งค่าความปลอดภัยแบบคลิกเดียวผ่านอินเทอร์เฟซนี้ได้ :::tips
URL:
/open-api/v2/rest/security/enableวิธีการ:
PUTส่วนหัว:
Content-Type: application/json
Authorization: Bearer ::: พารามิเตอร์การร้องขอ: ไม่มี การตอบข้อมูลสำเร็จ: วัตถุว่าง {} :::tips เงื่อนไข: พารามิเตอร์คำขอถูกต้อง และการตรวจสอบตัวตนของผู้ใช้ผ่าน **รหัสสถานะ: **200 OK ::: ตัวอย่างการตอบกลับ:
e. ปิดใช้งานความปลอดภัย
อนุญาตให้ผู้ใช้ที่ได้รับอนุญาตปิดใช้งานความปลอดภัยผ่านอินเทอร์เฟซนี้ได้ :::tips
URL:
/open-api/v2/rest/security/disableวิธีการ:
PUTส่วนหัว:
Content-Type: application/json
Authorization: Bearer ::: พารามิเตอร์การร้องขอ: ไม่มี การตอบข้อมูลสำเร็จ: วัตถุว่าง {} :::tips เงื่อนไข: พารามิเตอร์คำขอถูกต้อง และการตรวจสอบตัวตนของผู้ใช้ผ่าน **รหัสสถานะ: **200 OK ::: ตัวอย่างการตอบกลับ:
4. การเข้าถึงอุปกรณ์บุคคลที่สาม
4.1 คำแนะนำการเข้าถึง
การเข้าถึงอุปกรณ์

การเข้าถึงเกตเวย์บุคคลที่สาม

ขั้นตอนการเข้าถึง
กำหนดการจัดหมวดหมู่ของอุปกรณ์ในเกตเวย์ รายละเอียดดูที่ [Supported Device Type]
กำหนดความสามารถที่อุปกรณ์สามารถเข้าถึงได้ รายละเอียดดูที่ [Supported Device Capabilities]
เรียกใช้อินเทอร์เฟซ [Discovery Request] เพื่อเพิ่มอุปกรณ์ไปยังเกตเวย์
ข้อควรระวัง: คุณต้องให้ที่อยู่บริการเพื่อรับคำสั่งที่เกตเวย์ส่งมา ซึ่งใช้รับคำสั่งควบคุมอุปกรณ์ที่เกตเวย์ออก.
หากสถานะของอุปกรณ์บุคคลที่สามเปลี่ยนแปลง คุณต้องเรียกอินเทอร์เฟซ [Device States Change Report] เพื่อส่งสถานะล่าสุดกลับไปยังเกตเวย์
หลังจากเพิ่มแล้ว อุปกรณ์บุคคลที่สามจะปรากฏในรายการอุปกรณ์ โดยฟังก์ชันส่วนใหญ่เทียบเท่ากับอุปกรณ์ของเกตเวย์ (อุปกรณ์ที่ไม่ใช่บุคคลที่สาม) และอินเทอร์เฟซเปิดสาธารณะที่เกี่ยวกับอุปกรณ์สามารถใช้ได้ตามปกติ
เลือกประเภทอุปกรณ์ที่เหมาะสม การจัดหมวดหมู่จะส่งผลต่อการแสดงผล UI สุดท้ายเมื่ออุปกรณ์เชื่อมต่อกับเกตเวย์
เลือกความสามารถอุปกรณ์ที่ถูกต้อง รายการความสามารถจะกำหนดสถานะของโปรโตคอลสถานะอุปกรณ์
กระบวนการโปรแกรม
a. การเข้าถึงอุปกรณ์

b. การเข้าถึงเกตเวย์บุคคลที่สาม

4.2 ตัวอย่างการเข้าถึง
สวิตช์ ปลั๊ก
ซิงค์อุปกรณ์บุคคลที่สาม
รายงานสถานะอุปกรณ์
รายงานออฟไลน์/ออนไลน์
รับคำสั่งเกี่ยวกับการควบคุมอุปกรณ์จากเกตเวย์
สอบถามอุปกรณ์
4.3 Web API
อินเทอร์เฟซเกตเวย์สำหรับคำขอบุคคลที่สาม
รูปแบบการร้องขอ
อนุญาตให้ผู้ใช้ที่ได้รับอนุญาตส่งคำขอเหตุการณ์ไปยังเกตเวย์ผ่านอินเทอร์เฟซนี้ได้ :::tips
URL:/open-api/V2/rest/thirdparty/event
วิธีการ:POST
ส่วนหัว:
Content-Type: application/json
Autorization: Bearer ::: พารามิเตอร์คำขอ:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
event
EventObject
N
ข้อมูลโครงสร้างวัตถุเหตุการณ์ที่ร้องขอ
EventObject
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
header
HeaderObject
N
ข้อมูลโครงสร้างส่วนหัวที่ร้องขอ
endpoint
EndpointObject
Y
ข้อมูลโครงสร้าง endpoint ที่ร้องขอ หมายเหตุ: ฟิลด์นี้จะว่างเมื่อซิงค์รายการอุปกรณ์ใหม่
payload
PayloadObject
N
ข้อมูลโครงสร้าง payload ที่ร้องขอ
HeaderObject
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
name
string
N
ชื่อคำขอ พารามิเตอร์ไม่บังคับ: DiscoveryRequest: ซิงค์อุปกรณ์ใหม่ DeviceStatesChangeReport: รายงานการอัปเดตสถานะอุปกรณ์ DeviceOnlineChangeReport: รายงานสถานะออนไลน์ของอุปกรณ์
message_id
string
N
รหัสข้อความของคำขอ, UUID_V4
version
string
N
หมายเลขเวอร์ชันโปรโตคอลของคำขอ ปัจจุบันกำหนดเป็น 1
EndpointObject
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
serial_number
string
N
หมายเลขซีเรียลเฉพาะของอุปกรณ์
third_serial_number
string
N
หมายเลขซีเรียลเฉพาะของอุปกรณ์บุคคลที่สาม
tags
object
Y
รูปแบบ JSON คู่คีย์-ค่า ข้อมูลอุปกรณ์ที่กำหนดเอง [ฟังก์ชันการจัดการอุปกรณ์] - [คำอธิบายแท็ก]
PayloadObject โครงสร้างคำขอแตกต่างกันตาม header.name แต่ละค่า
รูปแบบการตอบกลับ
:::tips **รหัสสถานะ: **200 OK พารามิเตอร์การตอบกลับ: :::
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
header
HeaderObject
N
ข้อมูลโครงสร้างส่วนหัวการตอบกลับ
payload
PayloadObject
N
ข้อมูลโครงสร้าง payload การตอบกลับ
HeaderObject
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
name
string
N
ชื่อส่วนหัวการตอบกลับ พารามิเตอร์ไม่บังคับ: Response: ตอบกลับสำเร็จ ErrorResponse: ตอบกลับข้อผิดพลาด
message_id
string
N
รหัสข้อความของส่วนหัวการตอบกลับ, UUID_V4 ให้ส่งค่าจาก request header.message_id ที่นี่ *หากคำขอไม่มี message_id ฟิลด์นี้จะเป็นสตริงว่างเมื่อตอบกลับ
version
string
N
- หมายเลขเวอร์ชันโปรโตคอลของคำขอ ปัจจุบันกำหนดเป็น 1.
การตอบกลับสำเร็จ--PayloadObject :
ขึ้นอยู่กับประเภทคำขอ โครงสร้างการตอบกลับจะแตกต่างกัน สำหรับรายละเอียด โปรดดูเอกสารคำสั่งขอเฉพาะ
การตอบกลับล้มเหลว--PayloadObject:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
type
string
N
ประเภทข้อผิดพลาด:
INVALID_PARAMETERS: พารามิเตอร์ผิดพลาด
AUTH_FAILURE: ข้อผิดพลาดการยืนยันสิทธิ์
INTERNAL_ERROR: ข้อผิดพลาดบริการภายใน | | คำอธิบาย | string | N | คำอธิบายข้อผิดพลาด |
DiscoveryRequest ซิงค์รายการอุปกรณ์ใหม่
หมายเหตุ: หลังจากอุปกรณ์ถูกซิงค์เข้ากับเกตเวย์ จะอยู่ในสถานะออนไลน์โดยค่าเริ่มต้น คือ online=true การเปลี่ยนแปลงสถานะออนไลน์ในภายหลังขึ้นอยู่กับการซิงค์กับบุคคลที่สามผ่านอินเทอร์เฟซ DeviceOnlineChangeReport เท่านั้น
พารามิเตอร์การร้องขอ: EndpointObject**:**ไม่มี PayloadObject:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
endpoints
EndpointObject[]
N
รายการอุปกรณ์
EndpointObject:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
third_serial_number
string
N
หมายเลขซีเรียลเฉพาะของอุปกรณ์บุคคลที่สาม
name
string
N
ชื่ออุปกรณ์
display_category
string
N
หมวดหมู่อุปกรณ์ ดูรายละเอียดที่ [Supported Device Type] *อุปกรณ์บุคคลที่สามยังไม่รองรับการเพิ่มกล้องในขณะนี้
capabilities
CapabilityObject[]
N
รายการความสามารถ
state
object
N
ข้อมูลสถานะเริ่มต้น
manufacturer
string
N
ผู้ผลิต
model
string
N
รุ่นอุปกรณ์
tags
object
Y
รูปแบบ JSON คู่คีย์-ค่า ข้อมูลอุปกรณ์ที่กำหนดเอง: ใช้เก็บช่องของอุปกรณ์ ใช้เก็บหน่วยอุณหภูมิ ข้อมูลที่กำหนดเองอื่นๆ ของบุคคลที่สาม
firmware_version
string
N
เวอร์ชันเฟิร์มแวร์
ตัวอย่างคำขอ :
พารามิเตอร์การตอบกลับ: PayloadObject:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
endpoints
EndpointObject[]
N
รายการอุปกรณ์
EndpointObject:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
serial_number
string
N
หมายเลขซีเรียลเฉพาะของอุปกรณ์
third_serial_number
string
N
หมายเลขซีเรียลเฉพาะของอุปกรณ์บุคคลที่สาม
ตัวอย่างการตอบกลับที่ถูกต้อง:
ตัวอย่างการตอบกลับข้อผิดพลาด:
DeviceStatesChangeReport รายงานการเปลี่ยนแปลงสถานะอุปกรณ์
หมายเหตุ: การรายงานสถานะซ้ำๆ อาจทำให้ทริกเกอร์ฉากที่เกี่ยวข้องโดยผิดพลาด
พารามิเตอร์การร้องขอ: PayloadObject:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
state
object
N
สถานะอุปกรณ์ ดู [Supported device cabilities] สำหรับรายละเอียด
ตัวอย่างคำขอ :
พารามิเตอร์การตอบกลับ: PayloadObject: วัตถุว่าง ตัวอย่างการตอบกลับที่สำเร็จ:
DeviceOnlineChangeReport รายงานสถานะออนไลน์ของอุปกรณ์
หมายเหตุ: การรายงานสถานะซ้ำๆ อาจทำให้ทริกเกอร์ฉากที่เกี่ยวข้องโดยผิดพลาด
พารามิเตอร์การร้องขอ: PayloadObject:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
ออนไลน์
boolean
N
สถานะออนไลน์ของอุปกรณ์ true: ออนไลน์
false: ออฟไลน์
ตัวอย่างคำขอ :
พารามิเตอร์การตอบกลับ: PayloadObject: วัตถุว่าง ตัวอย่างการตอบกลับที่สำเร็จ:
DeviceInformationUpdatedReport รายงานการอัปเดตข้อมูลอุปกรณ์
หมายเหตุ: การอัปเดตอาจส่งผลกระทบต่อฉากหรือฟังก์ชันความปลอดภัยที่มีอยู่
พารามิเตอร์การร้องขอ: PayloadObject:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
capabilities
| CapabilityObject[]
| N
| รายการความสามารถ รายละเอียดดูในส่วนความสามารถอุปกรณ์ที่รองรับ **หมายเหตุ: **พารามิเตอร์นี้จะอัปเดตเฉพาะ value ของ การตั้งค่า คีย์ ภายใน CapabilityObject, และอนุญาตให้อัปเดตได้ก็ต่อเมื่อ permission สำหรับ การตั้งค่า คีย์เป็น 11 หรือ 01. สำหรับคำนิยามโครงสร้างเฉพาะของ การตั้งค่า ใน CapabilityObjectโปรดอ้างถึงคำอธิบายรายละเอียดในส่วน 2.3 หมวดหมู่การแสดงผลอุปกรณ์ & ความสามารถของอุปกรณ์. | | tags
| object
| Y
| รูปแบบ JSON คู่คีย์-ค่า ข้อมูลอุปกรณ์ที่กำหนดเอง.
สามารถใช้เก็บช่องของอุปกรณ์ได้
สามารถใช้เก็บหน่วยอุณหภูมิได้
ข้อมูลกำหนดเองอื่นๆ ของบุคคลที่สาม |
ตัวอย่างคำขอ :
พารามิเตอร์การตอบกลับ: PayloadObject: วัตถุว่าง ตัวอย่างการตอบกลับที่สำเร็จ:
เกตเวย์ส่งอินเทอร์เฟซคำสั่งผ่านที่อยู่บริการของอุปกรณ์
หมายเหตุ:
ฝ่ายบุคคลที่สามต้องตอบกลับคำขอจากเกตเวย์ภายใน 3 วินาที มิฉะนั้นเกตเวย์จะตัดสินว่าเวลาการประมวลผลคำสั่งหมดเวลา
หากบริการบุคคลที่สามออฟไลน์ เกตเวย์จะตั้งค่าสถานะอุปกรณ์เป็นออฟไลน์ และบริการบุคคลที่สามจะต้องรายงานสถานะอุปกรณ์ (DeviceStatesChangeReport) หรือสถานะออนไลน์ (DeviceOnlineChangeReport) ก่อนจะกลับไปเป็นออนไลน์ได้
รูปแบบคำขอ
เกตเวย์ส่งคำสั่งไปยังบุคคลที่สามผ่านอินเทอร์เฟซที่อยู่บริการของอุปกรณ์ :::tips
URL:
วิธีการ:POST
ส่วนหัว:
Content-Type: application/json ::: พารามิเตอร์คำขอ:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
directive
DirectiveObject
N
ข้อมูลโครงสร้างวัตถุคำสั่ง
DirectiveObject
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
header
HeaderObject
N
ข้อมูลโครงสร้างส่วนหัวที่ร้องขอ
endpoint
EndpointObject
N
ข้อมูลโครงสร้าง endpoint ที่ร้องขอ
payload
PayloadObject
N
ข้อมูลโครงสร้าง payload ที่ร้องขอ
HeaderObject
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
name
string
N
ชื่อคำขอ พารามิเตอร์ไม่บังคับ: UpdateDeviceStates: อัปเดตสถานะอุปกรณ์
message_id
string
N
รหัสข้อความของคำขอ, UUID_V4
version
string
N
หมายเลขเวอร์ชันโปรโตคอลของคำขอ ปัจจุบันกำหนดเป็น 1.
EndpointObject
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
serial_number
string
N
หมายเลขซีเรียลเฉพาะของอุปกรณ์
third_serial_number
string
N
หมายเลขซีเรียลเฉพาะของอุปกรณ์บุคคลที่สาม
tags
object
N
รูปแบบ JSON คู่คีย์-ค่า ข้อมูลอุปกรณ์ที่กำหนดเอง [ฟังก์ชันการจัดการอุปกรณ์] - [คำอธิบายแท็ก]
PayloadObject: ตามค่า header.name, จะมีโครงสร้างคำขอเฉพาะสำหรับแต่ละค่า
ตัวอย่างคำขอ :
รูปแบบการตอบกลับ
:::tips **HTTP Status Code: **200 OK แอตทริบิวต์การตอบ HTTP: :::
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
event
EventObject
N
ข้อมูลโครงสร้างเหตุการณ์การตอบกลับ
EventObject
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
header
HeaderObject
N
ข้อมูลโครงสร้างส่วนหัวที่ร้องขอ
payload
PayloadObject
N
ข้อมูลโครงสร้าง payload ที่ร้องขอ
HeaderObject
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
name
string
N
ชื่อส่วนหัวการตอบกลับ พารามิเตอร์ไม่บังคับ: UpdateDeviceStatesResponse: การตอบกลับการอัปเดตสถานะอุปกรณ์ ErrorResponse: การตอบกลับข้อผิดพลาด
message_id
string
N
รหัสข้อความของส่วนหัวการตอบกลับ, UUID_V4 ให้ส่งค่าจาก request header.message_id ที่นี่
version
string
N
หมายเลขเวอร์ชันโปรโตคอลของคำขอ ปัจจุบันกำหนดเป็น 1.
การตอบกลับสำเร็จ--PayloadObject:
ขึ้นอยู่กับประเภทคำขอ โครงสร้างการตอบกลับจะแตกต่างกัน สำหรับรายละเอียด โปรดดูเอกสารคำสั่งขอเฉพาะ
การตอบกลับล้มเหลว--PayloadObject:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
type
string
N
ประเภทข้อผิดพลาด:
ENDPOINT_UNREACHABLE: อุปกรณ์เข้าถึงไม่ได้หรือออฟไลน์
ENDPOINT_LOW_POWER: อุปกรณ์อยู่ในโหมดพลังงานต่ำและไม่สามารถควบคุมได้
INVALID_DIRECTIVE: คำสั่งผิดปกติจากเกตเวย์
NO_SUCH_ENDPOINT: อุปกรณ์ไม่มีอยู่
NOT_SUPPORTED_IN_CURRENT_MODE: โหมดปัจจุบันไม่รองรับการดำเนินการ
INTERNAL_ERROR: ข้อผิดพลาดบริการภายใน
REMOTE_KEY_CODE_NOT_LEARNED: รหัสปุ่มรีโมทยังไม่ได้เรียนรู้ |
:::tips เงื่อนไข: พารามิเตอร์การร้องขอถูกต้อง **รหัสสถานะ: **200 OK พารามิเตอร์การตอบกลับ: :::
UpdateDeviceStates
พารามิเตอร์การร้องขอ: PayloadObject:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
state
object
N
สถานะอุปกรณ์ ดู [Supported device cabilities] สำหรับรายละเอียด.
ตัวอย่างคำขอ :
พารามิเตอร์การตอบกลับ: PayloadObject:วัตถุว่าง ตัวอย่างการตอบกลับที่สำเร็จ
QueryDeviceStates
พารามิเตอร์การร้องขอ: PayloadObject:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
state
object
N
สถานะอุปกรณ์ ดู [Supported device cabilities] สำหรับรายละเอียด.
ตัวอย่างคำขอ :
พารามิเตอร์การตอบกลับ: PayloadObject:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
state
object
N
สถานะอุปกรณ์ ดู [Supported device cabilities] สำหรับรายละเอียด.
ตัวอย่างการตอบกลับ:
ConfigureDeviceCapabilities
พารามิเตอร์การร้องขอ: PayloadObject:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
capabilities
CapabilityObject[]
N
รายการความสามารถ รายละเอียดดูในส่วนความสามารถอุปกรณ์ที่รองรับ โปรดทราบว่า ฟิลด์ permission ไม่สามารถเปลี่ยนแปลงได้ ให้ส่งค่าที่เหมือนกันเมื่อซิงค์
ตัวอย่างคำขอ :
พารามิเตอร์การตอบกลับ: PayloadObject:วัตถุว่าง ตัวอย่างการตอบกลับที่สำเร็จ
5. เหตุการณ์ที่เซิร์ฟเวอร์ส่ง (Server-sent events)
คำอธิบายอินเทอร์เฟซ MDN EventSource:https://developer.mozilla.org/en-US/docs/Web/API/Server-sent_events
5.1 คำสั่ง
เกตเวย์รองรับการผลักข้อความไปยังไคลเอนต์โดยใช้ SSE (Server-sent events) ไคลเอนต์สามารถตรวจสอบข้อความ SSE หลังจากได้รับข้อมูลรับรองการเข้าถึง และแยกวิเคราะห์เนื้อหาของข้อความที่ผลักตามโปรโตคอลการแจ้งเหตุการณ์อินเทอร์เฟซการพัฒนาเมื่อได้รับข้อความจากเกตเวย์ ควรสังเกตว่าเกตเวย์ปัจจุบันใช้โปรโตคอล HTTP1.1 ดังนั้น SSE บนฝั่งเบราว์เซอร์จะมีข้อจำกัดสูงสุดไม่เกิน 6 การเชื่อมต่อ (คำอธิบายเฉพาะดูได้ที่อินเทอร์เฟซ MDN EventSource)
5.2 รูปแบบทั่วไป
:::tips
URL:/open-api/V2/sse/bridge
วิธีการ:
GET::: พารามิเตอร์การร้องขอ:
access_token
string
N
Access Token
หมายเหตุ: เมื่อขอการเชื่อมต่อ SSE เกตเวย์จะตรวจสอบ access_token และจะคืนข้อผิดพลาดการยืนยันตัวตนหากไม่ถูกต้อง { "error": 401, "data": {}, "message": "invalid access_token"}
## ตัวอย่าง: ชื่อโมดูล: device เวอร์ชัน: 1,v2,v3 ประเภทข้อความ: addDevice
ตัวอย่าง:
5.3 โมดูลอุปกรณ์
a. เหตุการณ์เพิ่มอุปกรณ์
:::tips ชื่อโมดูล:device เวอร์ชัน:v2 ประเภทข้อความ:addDevice event.data พารามิเตอร์: :::
payload
ResponseDeviceObjectObject - อินเทอร์เฟซเหมือนกับการดึงรายการอุปกรณ์
N
ข้อมูลอุปกรณ์
ตัวอย่าง:
b. เหตุการณ์อัปเดตสถานะอุปกรณ์
:::tips ชื่อโมดูล:device เวอร์ชัน:v2 ประเภทข้อความ:updateDeviceState event.data พารามิเตอร์: :::
endpoint
EndpointObject
N
ข้อมูลอุปกรณ์
payload
object。 โครงสร้างเหมือนกับสถานะอุปกรณ์
N
ข้อมูลสถานะอุปกรณ์
EndpointObject:
serial_number
string
N
หมายเลขซีเรียลเฉพาะของอุปกรณ์
third_serial_number
string
Y
หมายเลขซีเรียลเฉพาะของอุปกรณ์บุคคลที่สาม สำหรับอุปกรณ์ที่เชื่อมต่อผ่านอินเทอร์เฟซเปิด ฟิลด์นี้จำเป็นต้องมี
ตัวอย่าง:
c. เหตุการณ์อัปเดตข้อมูลอุปกรณ์
:::tips ชื่อโมดูล:device เวอร์ชัน:v2 ประเภทข้อความ:updateDeviceInfo event.data พารามิเตอร์: :::
endpoint
EndpointObject
N
ข้อมูลอุปกรณ์
payload
DeviceChangeObject
N
ข้อมูลการเปลี่ยนแปลงของอุปกรณ์
EndpointObject:
serial_number
string
N
หมายเลขซีเรียลเฉพาะของอุปกรณ์
third_serial_number
string
Y
หมายเลขซีเรียลเฉพาะของอุปกรณ์บุคคลที่สาม สำหรับอุปกรณ์ที่เชื่อมต่อผ่านอินเทอร์เฟซเปิด ฟิลด์นี้จำเป็นต้องมี
DeviceChangeObject
name
string
N
ชื่ออุปกรณ์
capabilities
CapabilityObject []
Y
รายการความสามารถของอุปกรณ์
tags
object
Y
tagsobject | Nullable | คู่คีย์-ค่าในรูปแบบ JSON สำหรับข้อมูลอุปกรณ์ที่กำหนดเอง.
สามารถใช้เก็บข้อมูลช่องของอุปกรณ์ได้
สามารถใช้เก็บหน่วยอุณหภูมิได้
สำหรับข้อมูลกำหนดเองอื่นๆ ของบุคคลที่สาม. |
ตัวอย่าง:
d. เหตุการณ์ลบอุปกรณ์
:::tips ชื่อโมดูล:device เวอร์ชัน:v2 ประเภทข้อความ:deleteDevice event.data พารามิเตอร์: :::
endpoint
EndpointObject
N
ข้อมูลอุปกรณ์
EndpointObject:
serial_number
string
N
หมายเลขซีเรียลเฉพาะของอุปกรณ์
third_serial_number
string
Y
หมายเลขซีเรียลเฉพาะของอุปกรณ์บุคคลที่สาม สำหรับอุปกรณ์ที่เชื่อมต่อผ่านอินเทอร์เฟซเปิด ฟิลด์นี้จำเป็นต้องมี
ตัวอย่าง:
e. เหตุการณ์อัปเดตสถานะออนไลน์ของอุปกรณ์
:::tips ชื่อโมดูล:device เวอร์ชัน:v2 ประเภทข้อความ:updateDeviceOnline event.data พารามิเตอร์: :::
endpoint
EndpointObject
N
ข้อมูลอุปกรณ์
payload
DeviceChangeObject
N
ข้อมูลการเปลี่ยนแปลงของอุปกรณ์
EndpointObject:
serial_number
string
N
หมายเลขซีเรียลเฉพาะของอุปกรณ์
third_serial_number
string
Y
หมายเลขซีเรียลเฉพาะของอุปกรณ์บุคคลที่สาม สำหรับอุปกรณ์ที่เชื่อมต่อผ่านอินเทอร์เฟซเปิด ฟิลด์นี้จำเป็นต้องมี
DeviceChangeObject
ออนไลน์
boolean
N
สถานะออนไลน์ของอุปกรณ์
ตัวอย่าง:
5.4 โมดูลเกตเวย์
a. เหตุการณ์อัปเดตสถานะความปลอดภัย
:::tips ชื่อโมดูล:device เวอร์ชัน:v2 ประเภทข้อความ:updateDeviceOnline event.data พารามิเตอร์: :::
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
payload
SecurityStateObject
N
ข้อมูลอุปกรณ์
SecurityStateObject
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
alarm_state
string
N
arming| ถูกติดอาวุธ (Armed)disarming| ถูกปลดอาวุธ (Disarmed) |
ตัวอย่าง:
5.5 โมดูลความปลอดภัย
a. เหตุการณ์อัปเดตสถานะการติดอาวุธ
:::tips ชื่อโมดูล:device เวอร์ชัน:v2 ประเภทข้อความ:updateDeviceOnline event.data พารามิเตอร์: :::
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
payload
ArmStateObject
N
ข้อมูลการติดอาวุธและการปลดอาวุธ
ArmStateObject:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
arm_state
string
N
arming| ถูกติดอาวุธ (Armed)disarming| ปลดอาวุธ | | detail | DetailObject | N | รายละเอียดการติด/ปลดอาวุธ |
DetailObject:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
sid
int
N
รหัสโหมดความปลอดภัย
name
string
N
ชื่อระบบความปลอดภัย
ตัวอย่าง
6. TTS (ฟังก์ชันเครื่องยนต์แปลงข้อความเป็นเสียง (Text-to-Speech)
6.1 คำแนะนำ
บทบาทหลัก
ผู้ให้บริการบริการ TTS: ผู้ให้บริการเครื่องยนต์บริการ TTS รับผิดชอบในการลงทะเบียนเครื่องยนต์ TTS บนเกตเวย์และให้บริการ TTS
เซิร์ฟเวอร์เกตเวย์:iHost
ลูกค้า Gateway Open API
6.1.1 การลงทะเบียนบริการเครื่องยนต์ TTS
【ผู้ให้บริการบริการ TTS】เรียกอินเทอร์เฟซเพื่อลงทะเบียนเครื่องยนต์ TTS บนเกตเวย์
【เซิร์ฟเวอร์เกตเวย์】หลังจากลงทะเบียนสำเร็จ เกตเวย์จะเก็บข้อมูลพื้นฐานของเครื่องยนต์ TTS (รวมถึงที่อยู่บริการ server_address และการสื่อสารระหว่างเกตเวย์กับผู้ให้บริการ TTS จะดำเนินการผ่านที่อยู่ server_address) และจัดสรร ID บริการเครื่องยนต์ TTS ภายในเกตเวย์

6.1.2 ดึงรายการเสียงที่สังเคราะห์แล้ว
【ลูกค้า Gateway Open API】เรียกอินเทอร์เฟซเพื่อขอรับรายการของบริการเครื่องยนต์ TTS ที่ลงทะเบียน คุณจะได้รับรายการเครื่องยนต์ TTS ที่ลงทะเบียนในปัจจุบัน (รวมถึง ID ของเครื่องยนต์ TTS ที่เกตเวย์จัดสรร)
【ลูกค้า Gateway Open API】เรียกอินเทอร์เฟซเพื่อขอรับรายการเสียงของเครื่องยนต์ TTS ที่ระบุ เกตเวย์จะออกคำสั่งรายการเสียงแบบซิงโครนัสไปยังผู้ให้บริการ TTS ที่ระบุและส่งผลลัพธ์กลับมา

6.1.3 การสังเคราะห์เสียงโดยระบุเครื่องยนต์สังเคราะห์เสียง
【ลูกค้า Gateway Open API】เรียกอินเทอร์เฟซเพื่อขอรับรายการของบริการเครื่องยนต์ TTS ที่ลงทะเบียน คุณจะได้รับรายการเครื่องยนต์ TTS ที่ลงทะเบียนในปัจจุบัน (รวมถึง ID ของเครื่องยนต์ TTS ที่เกตเวย์จัดสรร)
【ลูกค้า Gateway Open API】เรียกอินเทอร์เฟซเพื่อขอรับรายการเสียงของเครื่องยนต์ TTS ที่ระบุ เกตเวย์จะออกคำสั่งรายการเสียงแบบซิงโครนัสไปยังผู้ให้บริการ TTS ที่ระบุและส่งผลลัพธ์กลับมา

6.1.4 สังเคราะห์เสียงและเล่นคำพูด TTS
【ลูกค้า Gateway Open API】เรียกอินเทอร์เฟซเพื่อขอรับรายการของบริการเครื่องยนต์ TTS ที่ลงทะเบียน คุณจะได้รับรายการเครื่องยนต์ TTS ที่ลงทะเบียนในปัจจุบัน (รวมถึง ID ของเครื่องยนต์ TTS ที่เกตเวย์จัดสรร)
【ลูกค้า Gateway Open API】เรียกอินเทอร์เฟซเพื่อขอรับรายการเสียงของเครื่องยนต์ TTS ที่ระบุ เกตเวย์จะออกคำสั่งรายการเสียงแบบซิงโครนัสไปยังผู้ให้บริการ TTS ที่ระบุและส่งผลลัพธ์กลับมา (รวมถึงที่อยู่ไฟล์เสียง TTS)
【ลูกค้า Gateway Open API】จดที่อยู่ไฟล์เสียง TTS จากผลลัพธ์ที่ส่งกลับในขั้นตอนก่อนหน้า เรียกอินเทอร์เฟซเล่นไฟล์เสียง และเล่นผ่านเกตเวย์
6.2 โมดูลเครื่องยนต์ TTS
6.2.1 ความสามารถที่เปิดโดยเกตเวย์
a. ดึงรายการบริการเครื่องยนต์ TTS ที่ลงทะเบียน
:::tips
URL:
/open-api/V2/rest/tts/enginesวิธีการ:
GETส่วนหัว:
Content-Type: application/json
Authorization: Bearer ::: พารามิเตอร์คำขอ: ไม่มี ข้อมูลการตอบกลับที่ถูกต้อง:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
engines
EngineObject []
N
รายการเครื่องยนต์ TTS ที่ลงทะเบียน
โครงสร้าง EngineObject
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
id
string
N
รหัสเครื่องยนต์ที่ถูกกำหนดโดยเกตเวย์
name
string
N
ชื่อของบริการเครื่องยนต์ TS
:::tips เงื่อนไข: พารามิเตอร์คำขอถูกต้อง และผ่านการยืนยันตัวตนของผู้ใช้ **รหัสสถานะ:**200 OK ตัวอย่างการตอบกลับ:: :::
b. ดึงรายการเสียงของเครื่องยนต์ TTS ที่ระบุ
:::tips
URL:
/open-api/V2/rest/tts/engine/{id}/audio-listวิธีการ:
GETส่วนหัว:
Content-Type: application/json
Authorization: Bearer ::: พารามิเตอร์คำขอ: ไม่มี ข้อมูลการตอบกลับที่ถูกต้อง:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
audio_list
AudioObject []
N
รายการเสียง
โครงสร้าง AudioObject
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
url
string
N
URL ไฟล์เสียง ตัวอย่างเช่น:
https://dl.espressif.cn/dl/audio/gs-16b-2c-44100hz.mp3
label
string
Y
ป้ายชื่อไฟล์เสียง
:::tips เงื่อนไข: พารามิเตอร์คำขอถูกต้อง และผ่านการยืนยันตัวตนของผู้ใช้ **รหัสสถานะ:**200 OK **รหัสข้อผิดพลาด:**
190000 เครื่องยนต์ทำงานผิดปกติ
ตัวอย่างการตอบกลับ:: :::
c. ดำเนินการสังเคราะห์คำพูดโดยใช้เครื่องยนต์ TTS ที่ระบุ
:::tips
URL:
/open-api/V2/rest/tts/engine/{id}/synthesizeวิธีการ:
POSTส่วนหัว:
Content-Type: application/json
Authorization: Bearer ::: พารามิเตอร์คำขอ:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
text
string
N
ข้อความที่ใช้สังเคราะห์เสียง
label
string
Y
ป้ายชื่อไฟล์เสียง
language
string
Y
ฟิลด์โปร่งใส ตัวเลือก รหัสภาษาสำหรับคำขอสังเคราะห์เสียง รายการรหัสภาษาที่รองรับโดยเฉพาะจะถูกจัดเตรียมโดยผู้ให้บริการเครื่องยนต์ TTS โปรดทราบว่า บริการเครื่องยนต์ TTS จำเป็นต้องรองรับภาษาตั้งต้นสำหรับการสังเคราะห์เสียง ซึ่งหมายความว่าหากไม่มีการส่งภาษามา จะใช้ภาษาตั้งต้นของเครื่องยนต์ในการสังเคราะห์
options
object
Y
ฟิลด์โปร่งใส ใช้ส่งพารามิเตอร์การกำหนดค่าที่จำเป็นสำหรับการสังเคราะห์ไปยังบริการเครื่องยนต์ TTS
ข้อมูลการตอบกลับที่ถูกต้อง:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
audio
AudioObject
N
รายการเสียง
โครงสร้าง AudioObject
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
url
string
N
URL ไฟล์เสียง ตัวอย่างเช่น:
https://dl.espressif.cn/dl/audio/gs-16b-2c-44100hz.mp3
label
string
Y
ป้ายชื่อไฟล์เสียง
:::tips เงื่อนไข: พารามิเตอร์คำขอถูกต้อง และผ่านการยืนยันตัวตนของผู้ใช้ **รหัสสถานะ:**200 OK **รหัสข้อผิดพลาด:**
190000 เครื่องยนต์ทำงานผิดปกติ
ตัวอย่างการตอบกลับ:: :::
6.2.2 การสื่อสารระหว่างเกตเวย์และบริการ TTS
a. การลงทะเบียนบริการเครื่องยนต์ TTS
ผู้ให้บริการ TTS ส่งคำขอไปยังเกตเวย์
:::tips
URL:
/open-api/V2/rest/thirdparty/eventวิธีการ:
POSTส่วนหัว:
Content-Type: application/json
Authorization: Bearer ::: พารามิเตอร์คำขอ:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
event
EventObject
N
โครงสร้างข้อมูลของวัตถุเหตุการณ์คำขอ
EventObject
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
header
HeaderObject
N
ข้อมูลโครงสร้างส่วนหัวที่ร้องขอ
payload
PayloadObject
N
ข้อมูลโครงสร้าง payload ที่ร้องขอ
HeaderObject
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
name
string
N
ชื่อคำขอ พารามิเตอร์ที่เป็นทางเลือก
RegisterTTSEngine | | message_id | string | N | รหัสข้อความคำขอ, UUID_V4 | | version | string | N | หมายเลขเวอร์ชันโปรโตคอลคำขอ ปัจจุบันกำหนดเป็น 1 |
PayloadObject
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
service_address
string
N
ที่อยู่บริการ ตัวอย่างเช่น http:///
name
string
N
ชื่อบริการ
ตัวอย่างคำขอ:
**พารามิเตอร์การตอบกลับที่ถูกต้อง:**
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
header
HeaderObject
N
ข้อมูลโครงสร้างส่วนหัวที่ร้องขอ
payload
PayloadObject
N
ข้อมูลโครงสร้าง payload ที่ร้องขอ
HeaderObject
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
name
string
N
ชื่อส่วนหัวการตอบกลับ พารามิเตอร์ที่เป็นทางเลือก:
การตอบกลับ (การตอบกลับที่สำเร็จ)
ErrorResponse (การตอบกลับข้อผิดพลาด) | | message_id | string | N | รหัสข้อความส่วนหัวการตอบกลับ, UUID_V4 ข้อความคำขอที่เข้ามาที่นี่: header.message_id | | version | string | N | หมายเลขเวอร์ชันโปรโตคอลคำขอ ปัจจุบันกำหนดเป็น 1 |
PayloadObject
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
engine_id
string
N
รหัสเครื่องยนต์ที่ถูกกำหนดโดยเกตเวย์
:::tips เงื่อนไข: พารามิเตอร์คำขอถูกต้อง และผ่านการยืนยันตัวตนของผู้ใช้ **รหัสสถานะ:**200 OK ตัวอย่างการตอบกลับ:: ::: ตัวอย่างการตอบกลับที่ถูกต้อง::
**พารามิเตอร์การตอบกลับผิดปกติ:**
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
type
string
N
ประเภทข้อผิดพลาด
INVALID_PARAMETERS (พารามิเตอร์ผิดพลาด)
AUTH_FAILURE (การตรวจสอบสิทธิ์ล้มเหลว)
INTERNAL_ERROR (ข้อผิดพลาดภายในบริการ) | | description | string | N | คำอธิบายข้อผิดพลาด |
ตัวอย่างการตอบกลับข้อผิดพลาด::
b. คำสั่งซิงโครไนซ์รายการเสียง
เกตเวย์ส่งคำสั่งไปยังผู้ให้บริการ TTS
:::tips
URL:
<service address>วิธีการ:
POSTส่วนหัว:
Content-Type: application/json ::: พารามิเตอร์คำขอ:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
directive
DirectiveObject
N
ข้อมูลโครงสร้างของวัตถุคำสั่ง
DirectiveObject
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
header
HeaderObject
N
ข้อมูลโครงสร้างส่วนหัวที่ร้องขอ
payload
PayloadObject
N
ข้อมูลโครงสร้าง payload ที่ร้องขอ
HeaderObject
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
name
string
N
ชื่อคำขอ พารามิเตอร์ที่เป็นทางเลือก:
SyncTTSAudioList | | message_id | string | N | รหัสข้อความคำขอ, UUID_V4 | | version | string | N | หมายเลขเวอร์ชันโปรโตคอลคำขอ ปัจจุบันกำหนดเป็น 1 |
ตัวอย่างคำขอ:
**พารามิเตอร์การตอบกลับที่ถูกต้อง:**
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
header
HeaderObject
N
ข้อมูลโครงสร้างส่วนหัวที่ร้องขอ
payload
PayloadObject
N
ข้อมูลโครงสร้าง payload ที่ร้องขอ
HeaderObject
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
name
string
N
ชื่อส่วนหัวการตอบกลับ พารามิเตอร์ที่เป็นทางเลือก:
การตอบกลับ (การตอบกลับที่สำเร็จ)
ErrorResponse (การตอบกลับข้อผิดพลาด) | | message_id | string | N | รหัสข้อความส่วนหัวการตอบกลับ, UUID_V4 ข้อความคำขอที่เข้ามาที่นี่: header.message_id | | version | string | N | หมายเลขเวอร์ชันโปรโตคอลคำขอ ปัจจุบันกำหนดเป็น 1 |
PayloadObject:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
audio_list
AudioObject []
N
รายการเสียง TTS
โครงสร้าง AudioObject
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
url
string
N
URL ไฟล์เสียง ตัวอย่างเช่น:
https://dl.espressif.cn/dl/audio/gs-16b-2c-44100hz.mp3
label
string
Y
ป้ายชื่อไฟล์เสียง
:::tips เงื่อนไข: พารามิเตอร์คำขอถูกต้อง และผ่านการยืนยันตัวตนของผู้ใช้ **รหัสสถานะ:**200 OK ตัวอย่างการตอบกลับ:: ::: ตัวอย่างการตอบกลับที่ถูกต้อง::
**พารามิเตอร์การตอบกลับผิดปกติ:**
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
type
string
N
ประเภทข้อผิดพลาด
INVALID_PARAMETERS (พารามิเตอร์ผิดพลาด)
AUTH_FAILURE (การตรวจสอบสิทธิ์ล้มเหลว)
INTERNAL_ERROR (ข้อผิดพลาดภายในบริการ) | | description | string | N | คำอธิบายข้อผิดพลาด |
ตัวอย่างการตอบกลับข้อผิดพลาด::
c. คำสั่งสังเคราะห์คำพูด
เกตเวย์ส่งคำสั่งไปยังผู้ให้บริการ TTS
:::tips
URL:
<service address>วิธีการ:
POSTส่วนหัว:
Content-Type: application/json ::: พารามิเตอร์คำขอ:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
directive
DirectiveObject
N
ข้อมูลโครงสร้างของวัตถุคำสั่ง
DirectiveObject
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
header
HeaderObject
N
ข้อมูลโครงสร้างส่วนหัวที่ร้องขอ
payload
PayloadObject
N
ข้อมูลโครงสร้าง payload ที่ร้องขอ
HeaderObject
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
name
string
N
ชื่อคำขอ พารามิเตอร์ที่เป็นทางเลือก:
SynthesizeSpeech | | message_id | string | N | รหัสข้อความคำขอ: UUID_V4 | | version | string | N | หมายเลขเวอร์ชันโปรโตคอลคำขอ ปัจจุบันกำหนดเป็น 1 |
PayloadObject
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
text
string
N
ข้อความที่ใช้สังเคราะห์เสียง
label
string
Y
ป้ายชื่อไฟล์เสียง
language
string
Y
ฟิลด์โปร่งใส ตัวเลือก รหัสภาษาสำหรับคำขอสังเคราะห์เสียง รายการรหัสภาษาที่รองรับโดยเฉพาะจะถูกจัดเตรียมโดยผู้ให้บริการเครื่องยนต์ TTS โปรดทราบว่า บริการเครื่องยนต์ TTS จำเป็นต้องรองรับภาษาตั้งต้นสำหรับการสังเคราะห์เสียง ซึ่งหมายความว่าหากไม่มีการส่งภาษามา จะใช้ภาษาตั้งต้นของเครื่องยนต์ในการสังเคราะห์
options
object
Y
ฟิลด์โปร่งใส ใช้ส่งพารามิเตอร์การกำหนดค่าที่จำเป็นสำหรับการสังเคราะห์ไปยังบริการเครื่องยนต์ TTS
ตัวอย่างคำขอ:
**พารามิเตอร์การตอบกลับที่ถูกต้อง:**
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
header
HeaderObject
N
ข้อมูลโครงสร้างส่วนหัวที่ร้องขอ
payload
PayloadObject
N
ข้อมูลโครงสร้าง payload ที่ร้องขอ
HeaderObject
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
name
string
N
ชื่อส่วนหัวการตอบกลับ พารามิเตอร์ที่เป็นทางเลือก:
การตอบกลับ (การตอบกลับที่สำเร็จ)
ErrorResponse (การตอบกลับข้อผิดพลาด) | | message_id | string | N | รหัสข้อความส่วนหัวการตอบกลับ, UUID_V4 ข้อความคำขอที่เข้ามาที่นี่: header.message_id | | version | string | N | หมายเลขเวอร์ชันโปรโตคอลคำขอ ปัจจุบันกำหนดเป็น 1 |
PayloadObject
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
audio
AudioObject
N
ไฟล์เสียง TTS
โครงสร้าง AudioObject
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
url
string
N
URL ไฟล์เสียง ตัวอย่างเช่น:
https://dl.espressif.cn/dl/audio/gs-16b-2c-44100hz.mp3
label
string
Y
ป้ายชื่อไฟล์เสียง
:::tips เงื่อนไข: พารามิเตอร์คำขอถูกต้อง และผ่านการยืนยันตัวตนของผู้ใช้ **รหัสสถานะ:**200 OK ตัวอย่างการตอบกลับ:: ::: ตัวอย่างการตอบกลับที่ถูกต้อง::
**พารามิเตอร์การตอบกลับผิดปกติ:**
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
type
string
N
ประเภทข้อผิดพลาด
INVALID_PARAMETERS (พารามิเตอร์ผิดพลาด)
AUTH_FAILURE (การตรวจสอบสิทธิ์ล้มเหลว)
INTERNAL_ERROR (ข้อผิดพลาดภายในบริการ) | | description | string | N | คำอธิบายข้อผิดพลาด |
ตัวอย่างการตอบกลับข้อผิดพลาด::
7. โมดูลมัลติมีเดีย
7.1 เล่นไฟล์เสียง
:::tips
URL:
/open-api/V2/rest/media/audio-playerวิธีการ:
POSTส่วนหัว:
Content-Type: application/json
Authorization: Bearer ::: พารามิเตอร์คำขอ:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
audio_url
string
N
ที่อยู่ URL ของไฟล์เสียง
ข้อมูลการตอบกลับที่ถูกต้อง: :::tips เงื่อนไข: พารามิเตอร์คำขอถูกต้อง และผ่านการยืนยันตัวตนของผู้ใช้ **รหัสสถานะ:**200 OK ตัวอย่างการตอบกลับ:: :::
8. การ์ด UI แบบกำหนดเอง
การ์ด UI แบบกำหนดเองช่วยให้คุณแสดงเนื้อหาที่ต้องการภายในการ์ดได้ เนื้อหานี้อาจเป็นเว็บเพจ รูปภาพ หรือบริการใดๆ ที่มี UI คุณเพียงแค่ให้ URL ของเนื้อหาที่ต้องการแสดง การ์ด UI จะปรับความกว้างและความสูงโดยอัตโนมัติ และเนื้อหาจะถูกแสดงโดยใช้ iFrame
8.1 คำแนะนำ
บทบาทหลัก
ผู้ให้บริการ UI: ผู้ให้บริการที่รับผิดชอบในการสร้างการ์ด UI แบบกำหนดเองบนเกตเวย์
เซิร์ฟเวอร์เกตเวย์: เซิร์ฟเวอร์เกตเวย์ (iHost)
ลูกค้า Gateway Open API: ลูกค้า Open API สำหรับเกตเวย์
8.1.1 การสร้างการ์ด UI แบบกำหนดเอง
[ผู้ให้บริการ UI]: เรียก API เพื่อสร้างการ์ด UI แบบกำหนดเองบนเกตเวย์
[เซิร์ฟเวอร์เกตเวย์]: เมื่อการลงทะเบียนสำเร็จ เกตเวย์จะเก็บข้อมูลพื้นฐานของการ์ด UI (รวมถึงการกำหนดขนาดและ URL ของทรัพยากรการ์ด) และกำหนด ID การ์ด UI ภายในเกตเวย์

8.1.2 การดึงรายการการ์ด UI
[ผู้ให้บริการ UI]: เรียก API เพื่อดึงรายการการ์ด UI
[เซิร์ฟเวอร์เกตเวย์]: ส่งคืนรายการการ์ด UI ที่เก็บไว้บนเกตเวย์ รวมถึงการ์ด UI แบบกำหนดเองที่ไม่ได้สร้างโดยผู้เรียก

8.1.3 การแก้ไขการกำหนดค่าของการ์ด UI ที่ระบุ
[ผู้ให้บริการ UI]: เรียก API เพื่อแก้ไขการกำหนดค่าของการ์ด UI ที่ระบุ เช่น การกำหนดขนาดและ URL ของทรัพยากร
[เซิร์ฟเวอร์เกตเวย์]: เมื่อแก้ไขสำเร็จ เกตเวย์จะเก็บข้อมูลการ์ด UI ที่อัปเดต รวมถึงการกำหนดขนาดและ URL ของทรัพยากรใหม่

8.1.4 การลบการ์ด UI แบบกำหนดเอง
[ผู้ให้บริการ UI]: เรียก API เพื่อลบการ์ด UI แบบกำหนดเองที่ระบุ
[เซิร์ฟเวอร์เกตเวย์]: เกตเวย์จะลบข้อมูลทั้งหมดที่เกี่ยวข้องกับการ์ด UI ที่ระบุ

8.2 โมดูลการ์ด UI แบบกำหนดเอง
8.2.1 การสร้างการ์ด UI แบบกำหนดเอง
ผู้ให้บริการ UI ส่งคำขอไปยังเกตเวย์เพื่อสร้างการ์ด UI แบบกำหนดเอง
:::tips
URL:
/open-api/v2/rest/ui/cardsวิธีการ:
POSTส่วนหัว:
Content-Type: application/json
Authorization: Bearer ::: พารามิเตอร์คำขอ:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
label
string
Y
ป้ายการ์ด: ใช้เพื่ออธิบายการ์ด เป็นนามแฝงของการ์ด
cast_settings
CastSettingsObject
Y
การตั้งค่าการ์ด Cast: การกำหนดค่าการตั้งค่าสำหรับการ์ดแบบ Cast
web_settings
WebSettingsObject
N
การตั้งค่าการ์ดเว็บ: การกำหนดค่าการตั้งค่าสำหรับการ์ดเว็บ
CastSettingsObject:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
dimensions
DimensionObject []
N
การกำหนดขนาด: ต้องรวมการกำหนดค่าอย่างน้อยหนึ่งรายการ
default
string
N
สเปคเริ่มต้น: ใช้สเปคขนาดเริ่มต้น พารามิเตอร์เป็นทางเลือก: 2x2
WebSettingsObject:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
dimensions
DimensionObject []
N
การกำหนดขนาด: ต้องรวมการกำหนดค่าอย่างน้อยหนึ่งรายการ
drawer_component
DrawerObject
Y
การตั้งค่าการแสดงผลส่วนประกอบลิ้นชัก
default
string
N
สเปคเริ่มต้น:
1x1
2x1 |
DimensionObject:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
src
string
N
URL ทรัพยากร: ตัวอย่าง: http://example.html
size
string
N
สเปคขนาด:
พารามิเตอร์เป็นทางเลือกของ CastSettingsObject:
2×2
พารามิเตอร์เป็นทางเลือกของ WebSettingsObject:
1x1
2x1 |
DrawerObject:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
src
string
N
URL ทรัพยากร: ตัวอย่าง: http://example.html
การตอบกลับข้อมูลสำเร็จ:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
id
string
N
ID เอกลักษณ์ของการ์ด UI
:::tips เงื่อนไข: พารามิเตอร์คำขอถูกต้อง และการตรวจสอบตัวตนของผู้ใช้ผ่าน **รหัสสถานะ: ** 200 OK ::: 请求示例:
ตัวอย่างการตอบกลับ:
8.2.2 ดึงรายการการ์ด UI
:::tips
URL:
/open-api/v2/rest/ui/cardsวิธีการ:
GETส่วนหัว:
Content-Type: application/json
Authorization: Bearer ::: พารามิเตอร์คำขอ: ไม่มี พารามิเตอร์การตอบกลับ:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
data
CardObject[]
N
รายการการ์ด UI
CardObjec Object:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
id
string
N
รหัสการ์ด: ตัวระบุเอกลักษณ์ของการ์ด
label
string
Y
ป้ายการ์ด: ใช้เพื่ออธิบายการ์ด ทำหน้าที่เป็นนามแฝงหรือชื่อของการ์ด
cast_settings
CastSettingsObject
Y
ป้ายการ์ด: ใช้เพื่ออธิบายการ์ด เป็นนามแฝงของการ์ด
web_settings
WebSettingsObject
N
การตั้งค่าการ์ด Cast: การกำหนดค่าการตั้งค่าสำหรับการ์ดแบบ Cast
app_name
string
Y
การตั้งค่าการ์ดเว็บ: การกำหนดค่าการตั้งค่าสำหรับการ์ดเว็บ
CastSettingsObject:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
dimensions
DimensionObject []
N
การกำหนดขนาด: ต้องรวมการกำหนดค่าอย่างน้อยหนึ่งรายการ
default
string
N
สเปคเริ่มต้น:
พารามิเตอร์ที่เป็นทางเลือก: 2x2
used
string
N
สเปคปัจจุบัน:
พารามิเตอร์ที่เป็นทางเลือก: 2x2
WebSettingsObject:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
dimensions
DimensionObject []
N
การกำหนดขนาด: ต้องรวมการกำหนดค่าอย่างน้อยหนึ่งรายการ
drawer_component
DrawerObject
Y
การตั้งค่าการแสดงผลส่วนประกอบลิ้นชัก
default
string
N
สเปคเริ่มต้น:
พารามิเตอร์ที่เป็นทางเลือก:
1x1
2x1 | | used | string | N | สเปคปัจจุบัน: พารามิเตอร์ที่เป็นทางเลือก:
1x1
2x1 |
DimensionObject:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
src
string
N
URL ทรัพยากร: ตัวอย่าง: http://example.html
size
string
N
สเปคขนาด:
พารามิเตอร์ที่เป็นทางเลือก:
1x1
2x1
หมายเหตุ: ปัจจุบัน การ์ดแบบ cast รองรับเฉพาะสเปค 2x2 เท่านั้น สเปค 2x2 จะไม่มีผล |
DrawerObject:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
src
string
N
URL ทรัพยากร: ตัวอย่าง: http://example.html
ตัวอย่างการตอบกลับ:
8.2.3 แก้ไขการกำหนดค่าของการ์ด UI ที่ระบุ
ผู้ใช้ที่ได้รับอนุญาตสามารถแก้ไขการกำหนดค่าของการ์ด UI ที่มีอยู่ผ่านอินเทอร์เฟซนี้ได้ ผู้ให้บริการการ์ดแบบกำหนดเองสามารถแก้ไขการ์ด UI ที่พวกเขาสร้างขึ้นเท่านั้น
:::tips
URL:
/open-api/v2/rest/ui/cards/{id}วิธีการ:
PUTส่วนหัว:
Content-Type: application/json
Authorization: Bearer ::: พารามิเตอร์คำขอ:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
label
string
Y
ใช้เพื่ออธิบายการ์ด เป็นนามแฝงของการ์ด
cast_settings
CastSettingsObject
Y
การตั้งค่าการ์ด Cast
web_settings
WebSettingsObject
Y
การตั้งค่าการ์ดเว็บ
CastSettingsObject:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
used
string
Y, Either used หรือ src ต้องระบุ แต่ต้องมีอย่างน้อยหนึ่งในพารามิเตอร์เหล่านี้
สเปคปัจจุบัน:
พารามิเตอร์ที่เป็นทางเลือก:
2x2
| | src | string | Y, Either used หรือ src ต้องระบุ แต่ต้องมีอย่างน้อยหนึ่งในพารามิเตอร์เหล่านี้ | URL ทรัพยากร: http://example.html |
WebSettingsObject:
แอตทริบิวต์
ประเภท
ตัวเลือก
คำอธิบาย
used
string
Y, Either used หรือ src ต้องระบุ แต่ต้องมีอย่างน้อยหนึ่งในพารามิเตอร์เหล่านี้
สเปคปัจจุบัน:
พารามิเตอร์ที่เป็นทางเลือก:
1x1
2x1 | | src | string | Y, Either
usedหรือsrcต้องระบุ แต่ต้องมีอย่างน้อยหนึ่งในพารามิเตอร์เหล่านี้ | URL ทรัพยากร: http://example.html |
การตอบกลับข้อมูลสำเร็จ: :::tips เงื่อนไข: พารามิเตอร์คำขอถูกต้อง และผ่านการยืนยันตัวตนของผู้ใช้ การ์ด UI ที่กำลังแก้ไขต้องถูกสร้างโดยผู้ให้บริการการ์ด UI แบบกำหนดเองที่เรียกอินเทอร์เฟซนี้ **รหัสสถานะ:** 200 OK รหัสข้อผิดพลาด:
406: ไม่มีสิทธิ์เข้าถึงทรัพยากรนี้ ::: **ตัวอย่างการตอบกลับ:**
**ตัวอย่างคำขอ:**
8.2.4 ลบการ์ด UI แบบกำหนดเอง
ผู้ใช้ที่ได้รับอนุญาตสามารถลบการ์ด UI ที่มีอยู่โดยใช้อินเทอร์เฟซนี้ได้ ผู้ให้บริการการ์ดแบบกำหนดเองสามารถลบการ์ด UI ที่พวกเขาสร้างขึ้นเท่านั้น
:::tips
URL:
/open-api/v2/rest/ui/cards/{id}วิธีการ:
DELETEส่วนหัว:
Content-Type: application/json
Authorization: Bearer ::: พารามิเตอร์คำขอ: ไม่มี ข้อมูลการตอบกลับที่สำเร็จ: :::tips เงื่อนไข: พารามิเตอร์คำขอถูกต้อง และผ่านการยืนยันตัวตนของผู้ใช้ การ์ด UI ที่กำลังแก้ไขต้องถูกสร้างโดยผู้ให้บริการการ์ด UI แบบกำหนดเองที่เรียกอินเทอร์เฟซนี้ **รหัสสถานะ:**
200 OKรหัสข้อผิดพลาด:
406: ไม่มีสิทธิ์เข้าถึงทรัพยากรนี้. ::: **ตัวอย่างการตอบกลับ:**
Last updated