Проблема
При выполнении запросов 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 показывает то же устройство, что и в автономном режиме