Как исправить «он не поддерживает это», когда я запрашиваю Alexa возвращаемое свойство - PullRequest
0 голосов
/ 10 января 2019

У меня есть конечная точка со свойствами powerState и подключения, которые можно извлечь:

    {
        "endpointId": "123",
        "manufacturerName": "abc",
        "friendlyName": "lamp",
        "description": "lamp",
        "displayCategories": [
            "LIGHT"
        ],
        "capabilities": [
            {
                "type": "AlexaInterface",
                "interface": "Alexa.PowerController",
                "version": "3",
                "properties": {
                    "supported": [{
                            "name": "powerState"
                        }],
                    "retrievable": true
                }
            },
            {
                "type": "AlexaInterface",
                "interface": "Alexa.EndpointHealth",
                "version": "3",
                "properties": {
                    "supported": [{
                            "name": "connectivity"
                        }],
                    "retrievable": true
                }
            }
        ],
        "cookie": {}
    }

Я отвечаю на запрос ReportState, отправляя состояние обоих свойств:


    {
        "context": {
            "properties": [
                {
                    "namespace": "Alexa.PowerController",
                    "name": "powerState",
                    "value": "ON",
                    "timeOfSample": "2019-01-10T10:17:19.99Z",
                    "uncertaintyInMilliseconds": 50
                },
                {
                    "namespace": "Alexa.EndpointHealth",
                    "name": "connectivity",
                    "value": {
                        "value": "OK"
                    },
                    "timeOfSample": "2019-01-10T10:17:19.90Z",
                    "uncertaintyInMilliseconds": 50
                }
            ]
        },
        "event": {
            "header": {
                "namespace": "Alexa",
                "name": "StateReport",
                "payloadVersion": "3",
                "messageId": "cde",
                "correlationToken": "efg123"
            },
            "endpoint": {
                "scope": {
                    "type": "BearerToken",
                    "token": "ab123"
                },
                "endpointId": "123",
                "cookie": {}
            },
            "payload": {}
        }
    }

И я отправляю тот же контекст в ответе PowerController. В приложении Alexa я вижу свое устройство, включаю и выключаю его и правильно вижу его состояние. Я могу попросить Алексу включить и выключить мое устройство и ответить «OK», но если я попытаюсь спросить: ** «Включено ли мое устройство?» ** Alexa отвечает, что это устройство не поддерживает это .

Язык навыков - итальянский, а документация PowerController https://developer.amazon.com/it/docs/device-apis/alexa-powercontroller.html говорит, что запрос поддерживается.

Что мне не хватает?

...