מדריך למצלמה לבית חכם
action.devices.types.CAMERA
– המצלמות הן מורכבות, והתכונות משתנות משמעותית לספקים שונים. עם הזמן, מצלמות ירכשו תכונות ומאפיינים רבים שמתארים יכולות ספציפיות. רבות מהפיצ'רים האלה עשויים לקיים אינטראקציה עם שידור הווידאו או האודיו בדרכים מיוחדות. למשל, שליחת סטרימינג למכשיר אחר, זיהוי התוכן שמועבר בסטרימינג, הפעלה מחדש של הפידים וכו'.
הסוג הזה מציין שהמכשיר מקבל את סמל המצלמה מילים נרדפות וכינויים.
יכולות המכשיר
אפשר לעיין במסמכי התיעוד המתאימים לגבי התכונה פרטי ההטמעה, כמו מאפיינים ומצבים שבהם השירות צריך לתמוך, ואיך לבנות תגובות EXECUTE ו-QUERY.
התכונות הנדרשות
התכונות והפקודות האלה נדרשים, אם הן רלוונטיות
במכשיר. אם המכשיר שלכם לא תומך בתכונות האלה, הזינו את קוד השגיאה של
functionNotSupported
בתגובה QUERY או EXECUTE. צפייה
שגיאות וחריגים לקבלת מידע נוסף.
דרישות איכות
- זמן אחזור: חייב להיות קטן מ-2,000 אלפיות שנייה או שווה לו.
- אמינות: חייבת להיות יותר מ-97% או שווה לו.
מכשיר לדוגמה: מצלמה פשוטה
הקטע הזה מכיל דוגמאות למטענים ייעודיים (payloads) של Intent שמייצגים 'מצלמה' נפוצה. על סמך סוג המכשיר והתכונות שמפורטות למעלה. אם מוסיפים או מסירים תכונות בהטמעה, תשנה את התשובות שלכם בהתאם כך שישקפו את השינויים האלה.
דוגמה של תגובת SYNC
{ "requestId": "6894439706274654512", "inputs": [ { "intent": "action.devices.SYNC" } ] }
{ "requestId": "6894439706274654512", "payload": { "agentUserId": "user123", "devices": [ { "id": "123", "type": "action.devices.types.CAMERA", "traits": [ "action.devices.traits.CameraStream" ], "name": { "name": "Simple camera" }, "willReportState": true, "attributes": { "cameraStreamSupportedProtocols": [ "hls", "progressive_mp4" ], "cameraStreamNeedAuthToken": true, "cameraStreamNeedDrmEncryption": false }, "deviceInfo": { "manufacturer": "smart-home-inc", "model": "hs1234", "hwVersion": "3.2", "swVersion": "11.4" } } ] } }
דוגמה לתשובה QUERY
{ "requestId": "6894439706274654514", "inputs": [ { "intent": "action.devices.QUERY", "payload": { "devices": [ { "id": "123" } ] } } ] }
{ "requestId": "6894439706274654514", "payload": { "devices": { "123": { "status": "SUCCESS", "online": true } } } }
פקודות EXECUTE לדוגמה
GetCameraStream
לפרטים נוספים על הפרמטרים של הפקודה:
אפשר לקרוא את
action.devices.traits.CameraStream
הפניה.
{ "requestId": "6894439706274654516", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.GetCameraStream", "params": { "StreamToChromecast": true, "SupportedStreamProtocols": [ "progressive_mp4" ] } } ] } ] } } ] }
{ "requestId": "6894439706274654516", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "cameraStreamAccessUrl": "https://fluffysheep.com/baaaaa.mp4", "cameraStreamReceiverAppId": "1g2f89213hg", "cameraStreamAuthToken": "12657342190192783", "cameraStreamProtocol": "progressive_mp4" } } ] } }
ERRORS במכשיר
ראה את הרשימה המלאה של שגיאות וחריגים.resourceUnavailable
– כל כשל שקשור ליצירת כתובת ה-URL של השידור.