การแจ้งเตือนช่วยให้การดําเนินการ smart home ใช้ Google Assistant เพื่อสื่อสารกับผู้ใช้เกี่ยวกับเหตุการณ์หรือการเปลี่ยนแปลงที่สําคัญเกี่ยวกับอุปกรณ์ คุณอาจใช้การแจ้งเตือนเพื่อแจ้งเตือนผู้ใช้เกี่ยวกับเหตุการณ์ในอุปกรณ์อย่างทันท่วงที เช่น เมื่อมีคนอยู่ที่ประตู หรือรายงานเกี่ยวกับการเปลี่ยนแปลงสถานะอุปกรณ์ที่ขอ เช่น เมื่อเกิดการหยุดล็อกประตู หรือติดสว่าง
การดําเนินการ smart home ของคุณสามารถส่งการแจ้งเตือนประเภทต่อไปนี้ไปยังผู้ใช้
การแจ้งเตือนเชิงรุก: แจ้งเตือนผู้ใช้เกี่ยวกับเหตุการณ์ในอุปกรณ์ smart home โดยไม่มีคําขอของผู้ใช้คนก่อนไปยังอุปกรณ์ของตน เช่น กริ่งประตู
การตอบกลับติดตามผล: การยืนยันว่าคําขอคําสั่งของอุปกรณ์ประสบความสําเร็จหรือล้มเหลว เช่น เมื่อล็อกประตู ใช้คําสั่งเหล่านี้กับคําสั่งของอุปกรณ์ ที่ใช้เวลาดําเนินการให้เสร็จสมบูรณ์ ระบบรองรับการตอบสนองติดตามผลเมื่อส่งคําขอคําสั่งของอุปกรณ์จากลําโพงอัจฉริยะและ Smart Display เท่านั้น
Assistant จะแสดงการแจ้งเตือนเหล่านี้ให้แก่ผู้ใช้ เพื่อแจ้งเกี่ยวกับลําโพงอัจฉริยะและ Smart Display การแจ้งเตือนเชิงรุกจะ ปิดอยู่โดยค่าเริ่มต้น ผู้ใช้จะเปิดหรือปิดการแจ้งเตือนเชิงรุกทั้งหมดจาก Google Home app (GHA) ได้
เหตุการณ์ที่เรียกการแจ้งเตือน
เมื่อมีเหตุการณ์ในอุปกรณ์เกิดขึ้น การดําเนินการดังกล่าวจะส่งคําขอการแจ้งเตือนไปยัง Google อุปกรณ์มีคุณสมบัติที่การดําเนินการของ smart home รองรับจะเป็นตัวกําหนดประเภทเหตุการณ์การแจ้งเตือนที่มีอยู่และข้อมูลที่คุณจะรวมไว้ในการแจ้งเตือนเหล่านั้นได้
ลักษณะเฉพาะต่อไปนี้จะสนับสนุนการแจ้งเตือนเชิงรุก
ลักษณะเฉพาะ | กิจกรรม |
---|---|
การตรวจหาออบเจ็กต์ | วัตถุที่อุปกรณ์ตรวจพบ เช่น เมื่อระบบตรวจพบใบหน้าที่รู้จักที่หน้าประตู ตัวอย่างเช่น "อลิสากับปวิชอยู่ที่ประตูหน้า" |
RunCycle | อุปกรณ์วนรอบเสร็จแล้ว เช่น "รอบเครื่องซักผ้าเสร็จสมบูรณ์" |
เซ็นเซอร์เซนเซอร์ | อุปกรณ์ตรวจพบสถานะของเซ็นเซอร์ที่รองรับ ตัวอย่างเช่น "ตัวตรวจจับควันตรวจพบควัน" |
ตัวควบคุมอุณหภูมิ | อุปกรณ์ถึงอุณหภูมิที่กําหนด เช่น "อุ่นเตาอบไว้แล้วที่ 350 องศา" |
เปิดและปิดระบบป้องกัน | ระบบจะเข้าสู่สถานะก่อนนาฬิกาปลุกที่มีการนับถอยหลังซึ่งทริกเกอร์ด้วยประตูที่เปิดอยู่ |
สตรีมกล้องถ่ายรูป | ลิงก์ไปยังสตรีมแบบสดของกล้องหลังจากที่อุปกรณ์ตรวจพบหรือตรวจพบการเคลื่อนไหว |
การตรวจจับการเคลื่อนไหว | "ตรวจพบความเคลื่อนไหวเวลา 12.00 น. วันที่ 1 กรกฎาคม 2020" |
ลักษณะเฉพาะต่อไปนี้รองรับการตอบกลับติดตามผล
ลักษณะเฉพาะ | กิจกรรม |
---|---|
เปิดและปิดระบบป้องกัน | สถานะความสมบูรณ์และการเปลี่ยนแปลงหลังจากคําสั่งของอุปกรณ์ action.devices.commands.ArmDisarm ตัวอย่างเช่น
"ระบบรักษาความปลอดภัยเปิดอยู่"
|
LockLock | สถานะความสมบูรณ์และการเปลี่ยนแปลงหลังจากคําสั่งของอุปกรณ์ action.devices.commands.LockUnlock เช่น "ประตูหน้าล็อกอยู่" หรือ "ประตูหน้ารถติด"
|
การควบคุมเครือข่าย | สถานะความสมบูรณ์และการเปลี่ยนแปลงหลังจากคําสั่งของอุปกรณ์ action.devices.commands.TestNetworkSpeed ตัวอย่างเช่น "การทดสอบความเร็วเครือข่ายสิ้นสุดแล้ว ความเร็วการดาวน์โหลดในเราเตอร์ออฟฟิศตอนนี้อยู่ที่ 80.2 Kbps และความเร็วการอัปโหลดอยู่ที่ 9.3 Kbps"
|
OpenClose | สถานะความสมบูรณ์และการเปลี่ยนแปลงหลังจากคําสั่งของอุปกรณ์ action.devices.commands.OpenClose เช่น "ประตูหน้าเปิดอยู่" หรือ "เปิดประตูหน้าไม่ได้"
|
เริ่มต้น | สถานะความสมบูรณ์และการเปลี่ยนแปลงหลังจากคําสั่งของอุปกรณ์ action.devices.commands.StartStop เช่น "เครื่องดูดฝุ่นเริ่มทํางาน"
|
อุปกรณ์ทุกประเภทรองรับการแจ้งเตือนสําหรับลักษณะเฉพาะที่เกี่ยวข้อง
สร้างการแจ้งเตือนสําหรับการดําเนินการในบ้านอัจฉริยะ
เพิ่มการแจ้งเตือนให้กับการดําเนินการ smart home ในขั้นตอนนี้
- แจ้งให้ Google ทราบหากเปิดการแจ้งเตือนจากแอปของอุปกรณ์ smart home ไว้ หากผู้ใช้เปิดหรือปิดการแจ้งเตือนในแอป ให้ส่งคําขอ
SYNC
เพื่อแจ้งให้ Google ทราบเกี่ยวกับการเปลี่ยนอุปกรณ์ - เมื่อเกิดเหตุการณ์ที่เกี่ยวข้องในอุปกรณ์หรือสถานะเปลี่ยนแปลงที่ทําให้เกิดการแจ้งเตือน ให้ส่งคําขอการแจ้งเตือนโดยเรียกใช้ Report State
reportStateAndNotification
API หากสถานะของอุปกรณ์เปลี่ยนไป คุณสามารถส่งทั้งเพย์โหลดสถานะและเพย์โหลดการแจ้งเตือนพร้อมกันใน Report State และการเรียกใช้การแจ้งเตือน
ส่วนต่อไปนี้จะครอบคลุมขั้นตอนเหล่านี้โดยละเอียด
ระบุว่ามีการเปิดใช้การแจ้งเตือนในแอปของคุณหรือไม่
ผู้ใช้สามารถเลือกรับการแจ้งเตือนที่ต้องการได้โดยเปิดใช้คุณลักษณะนี้ในGHA ในแอปสําหรับอุปกรณ์ smart home ของคุณ คุณยังเพิ่มความสามารถสําหรับผู้ใช้ในการสลับการแจ้งเตือนจากอุปกรณ์ได้อย่างชัดเจน เช่น จากการตั้งค่าแอปด้วย
แจ้งให้ Google ทราบว่าอุปกรณ์เปิดใช้การแจ้งเตือนอยู่โดยเรียกใช้คําขอซิงค์เพื่ออัปเดตข้อมูลอุปกรณ์ คุณควรส่งคําขอ SYNC
แบบนี้ทุกครั้งที่ผู้ใช้เปลี่ยนการตั้งค่านี้ในแอป
โปรดส่งข้อมูลอัปเดตอย่างใดอย่างหนึ่งต่อไปนี้ในการตอบกลับ SYNC
- หากผู้ใช้สลับการแจ้งเตือนอย่างชัดเจนในแอปของอุปกรณ์หรือคุณไม่ได้ให้ตัวเลือกสลับ ให้ตั้งค่าพร็อพเพอร์ตี้
devices.notificationSupportedByAgent
เป็นtrue
- หากผู้ใช้สลับการปิดการแจ้งเตือนอย่างชัดแจ้งในแอปของอุปกรณ์ ให้ตั้งค่าพร็อพเพอร์ตี้
devices.notificationSupportedByAgent
เป็นfalse
ข้อมูลโค้ดต่อไปนี้แสดงตัวอย่างวิธีตั้งค่าการตอบกลับ SYNC
devices: [{
id: 'device123',
...
notificationSupportedByAgent: true,
}]
ส่งคําขอการแจ้งเตือนไปยัง Google
หากต้องการทริกเกอร์การแจ้งเตือนใน Assistant การดําเนินการดําเนินการตามคําสั่งซื้อจะส่งเปย์โหลดการแจ้งเตือนไปยัง Google Home Graph ผ่าน Report State และการเรียกใช้ API การแจ้งเตือน
เปิดใช้ Google HomeGraph API
-
ใน Google Cloud Console ให้ไปที่หน้า HomeGraph API
ไปที่หน้า HomeGraph API - เลือกโปรเจ็กต์ที่ตรงกับรหัสโปรเจ็กต์ smart home
- คลิกเปิดใช้
สร้างคีย์บัญชีบริการ
ทําตามวิธีการต่อไปนี้เพื่อสร้างคีย์บัญชีบริการจาก Google Cloud Console
-
ไปที่หน้าสร้างคีย์ของบัญชีบริการในGoogle Cloud Console
ไปที่หน้าสร้างคีย์บัญชีบริการ - เลือกบัญชีบริการใหม่จากรายการบัญชีบริการ
- ป้อนชื่อลงในช่องชื่อบัญชีบริการ
- ป้อนรหัสในช่องรหัสบัญชีบริการ
จากรายการบทบาท ให้เลือกบัญชีบริการ > ผู้สร้างโทเค็นบัญชีบริการ
สําหรับประเภทคีย์ ให้เลือกตัวเลือก JSON
- คลิกสร้าง ไฟล์ JSON ที่มีการดาวน์โหลดคีย์ลงในคอมพิวเตอร์
ส่งการแจ้งเตือน
เรียกใช้คําขอการแจ้งเตือนโดยใช้ devices.reportStateAndNotification
API
คําขอ JSON ต้องมี eventId
ซึ่งเป็นรหัสที่ไม่ซ้ํากันที่แพลตฟอร์มสร้างขึ้นสําหรับเหตุการณ์ที่เรียกการแจ้งเตือน eventId
ควรเป็นรหัสแบบสุ่มที่แตกต่างกันทุกครั้งที่คุณส่งคําขอการแจ้งเตือน
ในออบเจ็กต์ notifications
ที่คุณส่งในการเรียก API ให้ใส่ค่า priority
ซึ่งกําหนดลักษณะการแสดงการแจ้งเตือน ออบเจ็กต์ notifications
อาจมีช่องที่แตกต่างกันโดยขึ้นอยู่กับลักษณะเฉพาะของอุปกรณ์
ทําตามขั้นตอนต่อไปนี้เพื่อตั้งค่าเปย์โหลดและเรียก API
ส่งเพย์โหลดการแจ้งเตือนเชิงรุก
หากต้องการเรียก API ให้เลือกตัวเลือกจากแท็บใดแท็บหนึ่งต่อไปนี้
HTTP
Home Graph API มีปลายทาง HTTP
- ใช้ไฟล์ JSON ของบัญชีบริการที่ดาวน์โหลดเพื่อสร้าง JSON Web Token (JWT) ดูข้อมูลเพิ่มเติมได้ใน การตรวจสอบสิทธิ์โดยใช้บัญชีบริการ
- รับโทเค็นเพื่อการเข้าถึง OAuth 2.0 ที่มีขอบเขต
https://www.googleapis.com/auth/homegraph
โดยใช้ oauth2l: - สร้างคําขอ JSON ด้วย
agentUserId
ต่อไปนี้คือตัวอย่างคําขอ JSON สําหรับ Report State และการแจ้งเตือน - รวม Report State และ JSON การแจ้งเตือนและโทเค็นในคําขอ HTTP POST ไปยังปลายทางของ Google Home Graph ต่อไปนี้คือตัวอย่างวิธีส่งคําขอในบรรทัดคําสั่งโดยใช้
curl
เป็นการทดสอบ
oauth2l fetch --credentials service-account.json \ --scope https://www.googleapis.com/auth/homegraph
{ "agentUserId": "PLACEHOLDER-USER-ID", "eventId": "PLACEHOLDER-EVENT-ID", "requestId": "PLACEHOLDER-REQUEST-ID", "payload": { "devices": { "notifications": { "PLACEHOLDER-DEVICE-ID": { "ObjectDetection": { "priority": 0, "detectionTimestamp": 1534875126750, "objects": { "named": [ "Alice" ], "unclassified": 2 } } } } } } }
curl -X POST -H "Authorization: Bearer ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -d @request-body.json \ "https://homegraph.googleapis.com/v1/devices:reportStateAndNotification"
gRPC
Home Graph API มีปลายทาง gRPC
- รับคําจํากัดความของบริการบัฟเฟอร์โปรโตคอลสําหรับ API ของ Home Graph
- ทําตามเอกสารสําหรับนักพัฒนาซอฟต์แวร์ gRPC เพื่อสร้างต้นขั้วไคลเอ็นต์สําหรับภาษาที่รองรับ
- เรียกเมธอด ReportStateAndNotification
Node.js
ไคลเอ็นต์ Google API Node.js มีการเชื่อมโยงสําหรับ Home Graph API
- เริ่มต้นบริการ
google.homegraph
โดยใช้ข้อมูลเข้าสู่ระบบเริ่มต้นของแอปพลิเคชัน - เรียกเมธอด
reportStateAndNotification
ด้วย ReportStateAndNotificationRequest ซึ่งจะแสดงผลPromise
ที่มี ReportStateAndNotificationResponse
const homegraphClient = homegraph({ version: 'v1', auth: new GoogleAuth({ scopes: 'https://www.googleapis.com/auth/homegraph' }) }); const res = await homegraphClient.devices.reportStateAndNotification({ requestBody: { agentUserId: 'PLACEHOLDER-USER-ID', eventId: 'PLACEHOLDER-EVENT-ID', requestId: 'PLACEHOLDER-REQUEST-ID', payload: { devices: { notifications: { 'PLACEHOLDER-DEVICE-ID': { ObjectDetection: { priority: 0, detectionTimestamp: 1534875126750, objects: { named: ['Alice'], unclassified: 2 } } } } } } } });
Java
ไลบรารีของไคลเอ็นต์ HomeGraph API สําหรับ Java มีการเชื่อมโยงสําหรับ Home Graph API
- เริ่มต้น
HomeGraphApiService
ด้วยข้อมูลเข้าสู่ระบบเริ่มต้นของแอปพลิเคชัน - เรียกเมธอด
reportStateAndNotification
ด้วยReportStateAndNotificationRequest
ซึ่งจะแสดงผลReportStateAndNotificationResponse
// Get Application Default credentials. GoogleCredentials credentials = GoogleCredentials.getApplicationDefault() .createScoped(List.of("https://www.googleapis.com/auth/homegraph")); // Create Home Graph service client. HomeGraphService homegraphService = new HomeGraphService.Builder( GoogleNetHttpTransport.newTrustedTransport(), GsonFactory.getDefaultInstance(), new HttpCredentialsAdapter(credentials)) .setApplicationName("HomeGraphExample/1.0") .build(); // Build device notification payload. Map<?, ?> notifications = Map.of( "ObjectDetection", Map.of( "priority", 0, "detectionTimestamp", 1534875126, "objects", Map.of("named", List.of("Alice"), "unclassifed", 2))); // Send notification. ReportStateAndNotificationRequest request = new ReportStateAndNotificationRequest() .setRequestId("PLACEHOLDER-REQUEST-ID") .setAgentUserId("PLACEHOLDER-USER-ID") .setEventId("PLACEHOLDER-EVENT-ID") .setPayload( new StateAndNotificationPayload() .setDevices( new ReportStateAndNotificationDevice() .setNotifications(Map.of("PLACEHOLDER-DEVICE-ID", notifications)))); homegraphService.devices().reportStateAndNotification(request);
ส่งเปย์โหลดการตอบกลับติดตามผล
เปย์โหลดสําหรับคําตอบที่ติดตามผลจะมีสถานะคําขอ รหัสข้อผิดพลาดสําหรับเหตุการณ์ที่ล้มเหลว (หากมี) และ followUpToken
ที่ถูกต้อง ซึ่งระบุไว้ระหว่างคําขอ Intent ของ EXECUTE
ต้องใช้ followUpToken
ภายใน 5 นาทีเพื่อให้ใช้งานได้และเชื่อมโยงคําตอบกับคําขอเดิมอย่างเหมาะสม
ข้อมูลโค้ดต่อไปนี้แสดงตัวอย่างเพย์โหลดคําขอ EXECUTE
ซึ่งมีช่อง followUpToken
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "inputs": [{ "intent": "action.devices.EXECUTE", "payload": { "commands": [{ "devices": [{ "id": "123", }], "execution": [{ "command": "action.devices.commands.TestNetworkSpeed", "params": { "testDownloadSpeed": true, "testUploadSpeed": false, "followUpToken": "PLACEHOLDER" } }] }] } }] };
Google ใช้ followUpToken
เพื่อส่งออกการแจ้งเตือนเฉพาะในอุปกรณ์ที่ผู้ใช้โต้ตอบด้วยในตอนแรก และไม่ได้ประกาศไปยังอุปกรณ์ทั้งหมดของผู้ใช้
หากต้องการเรียก API ให้เลือกตัวเลือกจากแท็บใดแท็บหนึ่งต่อไปนี้
HTTP
Home Graph API มีปลายทาง HTTP
- ใช้ไฟล์ JSON ของบัญชีบริการที่ดาวน์โหลดเพื่อสร้าง JSON Web Token (JWT) ดูข้อมูลเพิ่มเติมได้ใน การตรวจสอบสิทธิ์โดยใช้บัญชีบริการ
- รับโทเค็นเพื่อการเข้าถึง OAuth 2.0 ที่มีขอบเขต
https://www.googleapis.com/auth/homegraph
โดยใช้ oauth2l: - สร้างคําขอ JSON ด้วย
agentUserId
ต่อไปนี้คือตัวอย่างคําขอ JSON สําหรับ Report State และการแจ้งเตือน - รวม Report State และ JSON การแจ้งเตือนและโทเค็นในคําขอ HTTP POST ไปยังปลายทางของ Google Home Graph ต่อไปนี้คือตัวอย่างวิธีส่งคําขอในบรรทัดคําสั่งโดยใช้
curl
เป็นการทดสอบ
oauth2l fetch --credentials service-account.json \ --scope https://www.googleapis.com/auth/homegraph
{ "agentUserId": "PLACEHOLDER-USER-ID", "eventId": "PLACEHOLDER-EVENT-ID", "requestId": "PLACEHOLDER-REQUEST-ID", "payload": { "devices": { "notifications": { "PLACEHOLDER-DEVICE-ID": { "NetworkControl": { "priority": 0, "followUpResponse": { "status": "SUCCESS", "followUpToken": "PLACEHOLDER", "networkDownloadSpeedMbps": 23.3, "networkUploadSpeedMbps": 10.2 } } } } } } }
curl -X POST -H "Authorization: Bearer ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -d @request-body.json \ "https://homegraph.googleapis.com/v1/devices:reportStateAndNotification"
gRPC
Home Graph API มีปลายทาง gRPC
- รับคําจํากัดความของบริการบัฟเฟอร์โปรโตคอลสําหรับ API ของ Home Graph
- ทําตามเอกสารสําหรับนักพัฒนาซอฟต์แวร์ gRPC เพื่อสร้างต้นขั้วไคลเอ็นต์สําหรับภาษาที่รองรับ
- เรียกเมธอด ReportStateAndNotification
Node.js
ไคลเอ็นต์ Google API Node.js มีการเชื่อมโยงสําหรับ Home Graph API
- เริ่มต้นบริการ
google.homegraph
โดยใช้ข้อมูลเข้าสู่ระบบเริ่มต้นของแอปพลิเคชัน - เรียกเมธอด
reportStateAndNotification
ด้วย ReportStateAndNotificationRequest ซึ่งจะแสดงผลPromise
ที่มี ReportStateAndNotificationResponse
const followUpToken = executionRequest.inputs[0].payload.commands[0].execution[0].params.followUpToken; const homegraphClient = homegraph({ version: 'v1', auth: new GoogleAuth({ scopes: 'https://www.googleapis.com/auth/homegraph' }) }); const res = await homegraphClient.devices.reportStateAndNotification({ requestBody: { agentUserId: 'PLACEHOLDER-USER-ID', eventId: 'PLACEHOLDER-EVENT-ID', requestId: 'PLACEHOLDER-REQUEST-ID', payload: { devices: { notifications: { 'PLACEHOLDER-DEVICE-ID': { NetworkControl: { priority: 0, followUpResponse: { status: 'SUCCESS', followUpToken, networkDownloadSpeedMbps: 23.3, networkUploadSpeedMbps: 10.2, } } } } } } } });
Java
ไลบรารีของไคลเอ็นต์ HomeGraph API สําหรับ Java มีการเชื่อมโยงสําหรับ Home Graph API
- เริ่มต้น
HomeGraphApiService
โดยใช้ข้อมูลรับรองเริ่มต้นของแอปพลิเคชัน - เรียกเมธอด
reportStateAndNotification
ด้วยReportStateAndNotificationRequest
โดยจะแสดงReportStateAndNotificationResponse
// Get Application Default credentials. GoogleCredentials credentials = GoogleCredentials.getApplicationDefault() .createScoped(List.of("https://www.googleapis.com/auth/homegraph")); // Create Home Graph service client. HomeGraphService homegraphService = new HomeGraphService.Builder( GoogleNetHttpTransport.newTrustedTransport(), GsonFactory.getDefaultInstance(), new HttpCredentialsAdapter(credentials)) .setApplicationName("HomeGraphExample/1.0") .build(); // Extract follow-up token. ExecuteRequest.Inputs executeInputs = (Inputs) executeRequest.getInputs()[0]; String followUpToken = (String) executeInputs .getPayload() .getCommands()[0] .getExecution()[0] .getParams() .get("followUpToken"); // Build device follow-up response payload. Map<?, ?> followUpResponse = Map.of( "NetworkControl", Map.of( "priority", 0, "followUpResponse", Map.of( "status", "SUCCESS", "followUpToken", followUpToken, "networkDownloadSpeedMbps", 23.3, "networkUploadSpeedMbps", 10.2))); // Send follow-up response. ReportStateAndNotificationRequest request = new ReportStateAndNotificationRequest() .setRequestId("PLACEHOLDER-REQUEST-ID") .setAgentUserId("PLACEHOLDER-USER-ID") .setEventId("PLACEHOLDER-EVENT-ID") .setPayload( new StateAndNotificationPayload() .setDevices( new ReportStateAndNotificationDevice() .setNotifications(Map.of("PLACEHOLDER-DEVICE-ID", followUpResponse)))); homegraphService.devices().reportStateAndNotification(request);
Logging
การแจ้งเตือนรองรับการบันทึกเหตุการณ์ตามที่อธิบายไว้ในการเข้าถึงบันทึกเหตุการณ์ด้วย Cloud Logging บันทึกเหล่านี้มีประโยชน์สําหรับการทดสอบและการรักษาคุณภาพการแจ้งเตือนภายในการดําเนินการของคุณ
สคีมาของรายการ notificationLog
มีดังนี้
พร็อพเพอร์ตี้ | คำอธิบาย |
---|---|
requestId |
รหัสคําขอการแจ้งเตือน |
structName |
ชื่อของโครงสร้างการแจ้งเตือน เช่น "ObjectDetection" |
status |
ระบุสถานะของการแจ้งเตือน |
ช่อง status
ประกอบด้วยสถานะต่างๆ ที่อาจแสดงข้อผิดพลาดในเพย์โหลดการแจ้งเตือน บางรายการอาจมีให้ใช้งานเฉพาะ
ในเวอร์ชันที่ยังไม่เปิดตัวเวอร์ชันที่ใช้งานจริง
สถานะต่างๆ ได้แก่
สถานะ | คำอธิบาย |
---|---|
EVENT_ID_MISSING |
ระบุว่าช่อง eventId ที่จําเป็นขาดหายไป
|
PRIORITY_MISSING |
บ่งบอกว่าช่อง priority หายไป
|
NOTIFICATION_SUPPORTED_BY_AGENT_FALSE |
ระบุว่าพร็อพเพอร์ตี้ notificationSupportedByAgent ของอุปกรณ์ที่แจ้งใน SYNC เป็นเท็จ
|
NOTIFICATION_ENABLED_BY_USER_FALSE |
บ่งบอกว่าผู้ใช้ไม่ได้เปิดใช้การแจ้งเตือนในอุปกรณ์การแจ้งเตือนใน GHA สถานะนี้จะใช้ได้เฉพาะกับการดําเนินการที่ยังไม่ได้เปิดใช้งานเป็นเวอร์ชันที่ใช้งานจริงเท่านั้น |
NOTIFYING_DEVICE_NOT_IN_STRUCTURE |
ระบุว่าผู้ใช้ยังไม่ได้กําหนดอุปกรณ์การแจ้งเตือนให้กับบ้าน/โครงสร้าง สถานะนี้จะใช้ได้เฉพาะกับการดําเนินการที่ยังไม่ได้เปิดใช้งานเป็นเวอร์ชันที่ใช้งานจริงเท่านั้น |
นอกเหนือจากสถานะทั่วไปเหล่านี้ซึ่งสามารถใช้กับการแจ้งเตือนทั้งหมดแล้ว ช่อง status
ยังอาจมีสถานะเฉพาะของลักษณะเฉพาะ หากมี (เช่น OBJECT_DETECTION_DETECTION_TIMESTAMP_MISSING
)