Как реализовать свойства CameraStream через SDK для локальной домашней страницы Google

Мы попробовали локальный SDK и обработали ответ SYNC с помощью otherDeviceIds. Конфигурация сканирования должна быть в порядке, потому что наше локальное приложение уже получило запрос IDENTITY с ожидаемой полезной нагрузкой udp. Ответ IDENTITY должен быть в порядке, потому что локальная платформа уже должна пройти проверку "verifyId", потому что, если я установил verifyId в некоторую строку, в противном случае будет указано, что проверка не прошла.

Проблема в том, что когда я пытался «показать камеру», локальная функция обратного вызова выполнения не запускалась. В этой ситуации моя облачная функция firebase по-прежнему получала команду «action.devices.commands.GetCameraStream».

Пробовал образец проливов лампы вроде работает хорошо. Кто-нибудь знает, поддерживает ли Google local Home sdk черты CameraStream или нет.

Следующий журнал - это объект, возвращаемый SYNC в нашей облачной функции firebase, мы добавляем поле "otherDeviceIds": [{"deviceId": "789"}], чтобы завершить локальный SDK.

SYNC JSON объект:

{ "requestId": "465812xxx029114126", "payload": { "agentUserId": "023XXXXd4d850c01cd16ebb636eb8418", "devices": [{ "id": "123", "traits": ["action.devices.traits.CameraStream"], "name": { "defaultNames": ["xxx CAMERA"], "nicknames": ["Front door"], "name": "Camera" }, "customData": { "fooValue": 88, "barValue": true, "bazValue": "string" }, "attributes": { "cameraStreamSupportedProtocols": ["hls"], "cameraStreamNeedAuthToken": false, "cameraStreamNeedDrmEncryption": false }, "otherDeviceIds": [{ "deviceId": "789" }], "type": "action.devices.types.CAMERA", "willReportState": false }] } } Ответ IDENTITY должен быть в порядке, потому что локальная платформа уже должна пройти проверку "verifyId".

ИДЕНТИФИКАЦИЯ объекта запроса (локальный SDK):

{ "requestId": "XXXXXA5FB895B0CD58C022BDC", "inputs": [{ "intent": "action.devices.IDENTIFY", "payload": { "device": { "udpScanData": { "data": "A562696463373839656D6F64656C6966616B6563616E64796668775F726576656576742D316666775F7265766776312D62657461686368616E6E656C738101" } }, "structureData": {} } }], "devices": [{ "id": "123", "customData": { "barValue": true, "bazValue": "string", "fooValue": 88 } }] } IDENTIFY объект ответа (локальный SDK):

{ "intent": "action.devices.IDENTIFY", "requestId": "XXXXX8D0A4A5FB895B0CD58C022BDC", "payload": { "device": { "id": "", "verificationId": "789" } } }

Но когда я попытался «показать камеру», локальная функция обратного вызова выполнения не сработала. В этой ситуации моя облачная функция firebase по-прежнему получала команду «action.devices.commands.GetCameraStream».

Ниже приведен журнал, когда я говорю «покажи камеру» мою облачную функцию firebase.

{ "inputs": [{ "context": { "locale_country": "US", "locale_language": "en" }, "intent": "action.devices.EXECUTE", "payload": { "commands": [{ "devices": [{ "customData": { "barValue": true, "bazValue": "string", "fooValue": 88 }, "id": "123" }], "execution": [{ "command": "action.devices.commands.GetCameraStream", "params": { "StreamToChromecast": true, "SupportedStreamProtocols": ["progressive_mp4", "hls", "dash", "smooth_stream"] } }] }] } }], "requestId": "xxxx366353358387" }


person tuzhao2 liu    schedule 23.05.2020    source источник
comment
Добро пожаловать в сообщество! Не могли бы вы предоставить образец кода. Это помогает другим людям ответить на ваш вопрос. Часто мы видим запросы на решение, хотя это может быть неправильным способом решения вашей проблемы.   -  person idan    schedule 23.05.2020
comment
@idan Спасибо за ваш комментарий , Мы предоставляем соответствующий код.   -  person tuzhao2 liu    schedule 25.05.2020


Ответы (1)


CameraStream в настоящее время не поддерживается местным исполнителем.

person ToniCorinne    schedule 21.07.2020