Google Home SYN C и ReportState "онлайн" значения не читаются клиентом iOS, но Android в порядке - PullRequest
0 голосов
/ 10 февраля 2020

Проблема

При выполнении запросов SYN C, запросов QUERY и вызовов ReportState я сообщаю обо всех устройствах как "online": true. Я вижу, что Google корректно читает это значение, так как оно отображается в инструменте тестирования ReportState Dashboard. Android работает нормально, показывая устройство в сети («Связано с вами») после короткого запроса («Подключение ...»). И наоборот, при использовании мобильного клиента iOS, когда пользователь заходит на страницу устройства, он запрашивает только то, чтобы сообщить об устройстве как офлайн. И на приборной панели, и на JSON ответах на вызовы все показывают "online": true. Если пользователь пытается взаимодействовать с устройством, например, включить его, оно работает.

Ответ QUERY

{
    "requestId": "ARequestId",
    "payload": {
        "devices": [{
            "id": "ADeviceId",
            "online": true,
            "status": "SUCCESS"
        }]
    }
 }

Примечания

Это может быть ошибка в * Клиент 1034 *, но, скорее всего, это ошибка в моем коде или недоразумение с моей стороны, так как это мое первое действие «Умный дом».

Я пытался включить "online": true повсюду, например в вызовах SYN C, QUERY и ReportState. Это, по крайней мере, дало инструментальной панели представление о начальном состоянии в сети, но не помогло клиенту iOS.

В целом ReportState работает нормально, поскольку мои изменения отражаются на информационной панели.

Снимки экрана

Обратите внимание на противоречие между состоянием инструмента тестирования и индикацией iOS клиента.

Панель инструментов ReportState, показывающая онлайн = true

iOS Клиент Google Home показывает то же устройство, что и в автономном режиме

...