Схема признаков управления сетью умного дома
action.devices.traits.NetworkControl — эта черта принадлежит устройствам, которые поддерживают передачу сетевых данных и выполнение конкретных сетевых операций.
АТРИБУТЫ устройства
Устройства с этой характеристикой могут сообщать следующие атрибуты в рамках операции SYNC . Дополнительные сведения об обработке намерений SYNC см. в разделе Выполнение намерений .
| Атрибуты | Тип | Описание |
|---|---|---|
supportsEnablingGuestNetwork | логическое значение | (По умолчанию: Установите значение true, если гостевая сеть может быть включена. |
supportsDisablingGuestNetwork | логическое значение | (По умолчанию: Установите значение true, если гостевую сеть можно отключить. |
supportsGettingGuestNetworkPassword | логическое значение | (По умолчанию: Установите значение true, если пароль гостевой сети можно получить с помощью команды |
networkProfiles | Множество | Указывает поддерживаемые имена сетевых профилей. |
[ item, ... ] | Нить | Имя сетевого профиля, представляющего группу связанных устройств. |
supportsEnablingNetworkProfile | логическое значение | (По умолчанию: Установите значение true, если сетевые профили можно включить. |
supportsDisablingNetworkProfile | логическое значение | (По умолчанию: Установите значение true, если сетевые профили можно отключить. |
supportsNetworkDownloadSpeedTest | логическое значение | (По умолчанию: Установите значение true, если можно запустить тест скорости загрузки. |
supportsNetworkUploadSpeedTest | логическое значение | (По умолчанию: Установите значение true, если можно запустить тест скорости загрузки. |
Примеры
Сетевое устройство, поддерживающее гостевую сеть, профили и тест скорости.
{ "supportsEnablingGuestNetwork": true, "supportsDisablingGuestNetwork": true, "supportsEnablingNetworkProfile": true, "supportsDisablingNetworkProfile": true, "supportsNetworkDownloadSpeedTest": true, "supportsNetworkUploadSpeedTest": true, "supportsGettingGuestNetworkPassword": true, "networkProfiles": [ "Kids" ] }
СОСТОЯНИЯ устройства
Сущности с этим признаком могут сообщать о следующих состояниях как часть операции QUERY . Дополнительные сведения об обработке намерений QUERY см. в разделе Выполнение намерений .
| Штаты | Тип | Описание |
|---|---|---|
networkEnabled | логическое значение | Включена ли основная сеть. |
networkSettings | Объект | Содержит SSID основной сети. |
ssid | Нить | Необходимый. SSID сети. |
guestNetworkEnabled | логическое значение | Включена ли гостевая сеть. |
guestNetworkSettings | Объект | Содержит SSID гостевой сети. |
ssid | Нить | Необходимый. SSID сети. |
numConnectedDevices | Целое число | Количество устройств, подключенных к сети. |
networkUsageMB | Число | Использование сети в МБ (мегабайтах). Использование сети находится в пределах текущего расчетного периода, что может быть полезно для отслеживания ограничения использования сети расчетного периода. |
networkUsageLimitMB | Число | Лимит использования сети в МБ (мегабайтах). Лимит использования сети находится в пределах текущего расчетного периода. |
networkUsageUnlimited | логическое значение | Является ли использование сети неограниченным. Состояние устройства networkUsageLimitMB будет игнорироваться, если для него установлено значение true. |
lastNetworkDownloadSpeedTest | Объект | Содержит результаты последнего теста скорости загрузки по сети. |
downloadSpeedMbps | Число | Скорость загрузки в Мбит/с (мегабитах в секунду) по результатам последнего теста скорости сети. |
unixTimestampSec | Целое число | Временная метка Unix (количество секунд с начала эпохи Unix), когда был выполнен последний тест скорости загрузки по сети. |
status | Нить | Указывает, был ли последний тест скорости загрузки по сети успешным или неудачным. Поддерживаемые значения:
|
lastNetworkUploadSpeedTest | Объект | Содержит результаты последнего теста скорости загрузки сети. |
uploadSpeedMbps | Число | Скорость загрузки в Мбит/с (мегабитах в секунду) по результатам последнего теста скорости сети. |
unixTimestampSec | Целое число | Временная метка Unix (количество секунд с начала эпохи Unix), когда был выполнен последний тест скорости загрузки сети. |
status | Нить | Указывает, был ли последний тест скорости загрузки сети успешным или неудачным. Поддерживаемые значения:
|
networkSpeedTestInProgress | логическое значение | (По умолчанию: Проводится ли в данный момент тест скорости. |
networkProfilesState | Объект | Состояние сетевых профилей. Этот объект верхнего уровня должен содержать пары ключ-значение, где ключом является имя одного из сетевых профилей, перечисленных в атрибуте |
<string> | Объект | Объект, хранящий состояние отдельного профиля сети. Ценность |
enabled | логическое значение | Текущее включенное/отключенное состояние сетевого профиля. |
Примеры
Устройство с активной сетью.
{
"networkEnabled": true,
"networkSettings": {
"ssid": "home-network-123"
},
"guestNetworkSettings": {
"ssid": "home-network-123-guest"
},
"numConnectedDevices": 4,
"networkUsageMB": 100.8
}Устройство с активной сетью и результатами теста скорости.
{ "networkEnabled": true, "networkSettings": { "ssid": "home-network-123" }, "guestNetworkSettings": { "ssid": "home-network-123-guest" }, "numConnectedDevices": 4, "networkUsageMB": 100.8, "lastNetworkDownloadSpeedTest": { "downloadSpeedMbps": 159.8, "unixTimestampSec": 1563215576, "status": "SUCCESS" }, "lastNetworkUploadSpeedTest": { "uploadSpeedMbps": 64.1, "unixTimestampSec": 1563215576, "status": "SUCCESS" } }
Устройство с активной сетью и тестированием скорости.
{
"networkEnabled": true,
"networkSettings": {
"ssid": "home-network-123"
},
"guestNetworkSettings": {
"ssid": "home-network-123-guest"
},
"numConnectedDevices": 4,
"networkUsageMB": 100.8,
"networkSpeedTestInProgress": true
}Устройство с отключенным сетевым профилем «дети».
{
"networkEnabled": true,
"networkSettings": {
"ssid": "home-network-123"
},
"networkProfilesState": {
"parents": {
"enabled": true
},
"kids": {
"enabled": false
}
}
}КОМАНДЫ устройства
Устройства с этой особенностью могут реагировать на следующие команды в рамках операции EXECUTE . Дополнительные сведения об обработке намерений EXECUTE см. в разделе Выполнение намерения .
action.devices.commands.EnableDisableGuestNetwork
Включите или отключите гостевую сеть. Необходимо использовать вторичную проверку пользователя с помощью PIN-кода. Домашнюю безопасность пользователя можно считать затронутой, если с помощью этих команд отключены другие устройства безопасности.
Для этой команды требуются следующие атрибуты:
{
"supportsEnablingGuestNetwork": true,
"supportsDisablingGuestNetwork": true
}
Параметры
| Параметры | Тип | Описание |
|---|---|---|
enable | логическое значение | Необходимый. True, чтобы включить гостевую сеть, false, чтобы отключить гостевую сеть. |
Примеры
Включите гостевую сеть.
{
"command": "action.devices.commands.EnableDisableGuestNetwork",
"params": {
"enable": true
}
} action.devices.commands.EnableDisableNetworkProfile
Включите или отключите сетевой профиль. Необходимо использовать вторичную проверку пользователя с помощью PIN-кода. Домашнюю безопасность пользователя можно считать затронутой, если с помощью этих команд отключены другие устройства безопасности.
Для этой команды требуются следующие атрибуты:
{
"supportsEnablingNetworkProfile": true,
"supportsDisablingNetworkProfile": true
}
Параметры
| Параметры | Тип | Описание |
|---|---|---|
profile | Нить | Необходимый. Имя профиля из атрибута |
enable | логическое значение | Необходимый. True, чтобы включить профиль, false, чтобы отключить профиль. |
Примеры
Отключите интернет детям.
{
"command": "action.devices.commands.EnableDisableNetworkProfile",
"params": {
"profile": "Kids",
"enable": false
}
}Связанные ошибки
Произошла ошибка при попытке управления данным сетевым профилем.
Поддерживаемые значения:
-
networkProfileNotRecognized
action.devices.commands.GetGuestNetworkPassword
Получите пароль гостевой сети. Необходимо использовать вторичную проверку пользователя с помощью PIN-кода. Домашнюю безопасность пользователя можно считать затронутой, если с помощью этих команд отключены другие устройства безопасности.
Для этой команды требуются следующие атрибуты:
{
"supportsGettingGuestNetworkPassword": true
}
Параметры
| Параметры | Тип | Описание |
|---|---|---|
Нет свойств | ||
Примеры
Покажите мой гостевой пароль Wi-Fi.
{
"command": "action.devices.commands.GetGuestNetworkPassword",
"params": {}
}Результаты
| Результаты | Тип | Описание |
|---|---|---|
guestNetworkPassword | Нить | Необходимый. Пароль для гостевой сети. |
Примеры
Покажите мой гостевой пароль Wi-Fi.
{
"guestNetworkPassword": "123456"
} action.devices.commands.TestNetworkSpeed
Проверьте скорость загрузки и выгрузки по сети.
Для этой команды требуются следующие атрибуты:
{
"supportsNetworkDownloadSpeedTest": true,
"supportsNetworkUploadSpeedTest": true
}
Параметры
| Параметры | Тип | Описание |
|---|---|---|
testDownloadSpeed | логическое значение | Необходимый. Указывает, следует ли тестировать скорость загрузки. |
testUploadSpeed | логическое значение | Необходимый. Указывает, следует ли тестировать скорость загрузки. |
followUpToken | Нить | Необходимый. Токен, предоставленный Google для последующего ответа. |
Примеры
Какая скорость Wi-Fi?
{ "command": "action.devices.commands.TestNetworkSpeed", "params": { "testDownloadSpeed": true, "testUploadSpeed": true, "followUpToken": "123" } }
Связанные ошибки
Произошла ошибка при попытке запросить тест скорости.
Поддерживаемые значения:
-
networkSpeedTestInProgress
Последующие ответы
Устройства с этой характеристикой могут возвращать следующую полезную нагрузку последующего ответа как часть операции EXECUTE . Дополнительную информацию о реализации последующих ответов см. в разделе «Уведомления для действий умного дома» .
Полезная нагрузка содержит одно из следующего:
Успех: networkDownloadSpeedMbps.
| Поля | Тип | Описание |
|---|---|---|
followUpToken | Нить | Необходимый. Токен, предоставленный в исходном запросе EXECUTE. |
status | Нить | Необходимый. Результат запроса. Поддерживаемые значения:
|
networkDownloadSpeedMbps | Число | Необходимый. Скорость загрузки по сети измеряется в мегабитах в секунду. |
Успех: networkUploadSpeedMbps.
| Поля | Тип | Описание |
|---|---|---|
followUpToken | Нить | Необходимый. Токен, предоставленный в исходном запросе EXECUTE. |
status | Нить | Необходимый. Результат запроса. Поддерживаемые значения:
|
networkUploadSpeedMbps | Число | Необходимый. Скорость загрузки в сеть измеряется в мегабитах в секунду. |
Успех: networkDownloadSpeedMbps и networkUploadSpeedMbps.
| Поля | Тип | Описание |
|---|---|---|
followUpToken | Нить | Необходимый. Токен, предоставленный в исходном запросе EXECUTE. |
status | Нить | Необходимый. Результат запроса. Поддерживаемые значения:
|
networkDownloadSpeedMbps | Число | Необходимый. Скорость загрузки по сети измеряется в мегабитах в секунду. |
networkUploadSpeedMbps | Число | Необходимый. Скорость загрузки в сеть измеряется в мегабитах в секунду. |
Отказ
| Поля | Тип | Описание |
|---|---|---|
followUpToken | Нить | Необходимый. Токен, предоставленный в исходном запросе EXECUTE. |
status | Нить | Необходимый. Результат запроса. Поддерживаемые значения:
|
errorCode | Нить | Необходимый. Значением может быть любой код ошибки для этого признака, например, |
Примеры
Какая скорость Wi-Fi? (последующий ответ)
{ "NetworkControl": { "priority": 0, "followUpResponse": { "status": "SUCCESS", "networkDownloadSpeedMbps": 23.3, "networkUploadSpeedMbps": 10.2, "followUpToken": "1234" } } }
Какая скорость Wi-Fi? (последующий ответ с неудачей)
{
"NetworkControl": {
"priority": 0,
"followUpResponse": {
"status": "FAILURE",
"errorCode": "transientError",
"followUpToken": "1234"
}
}
}ОШИБКИ устройства
Полный список ошибок и исключений смотрите .Произошла ошибка при попытке управления данным сетевым профилем.
Поддерживаемые значения:
-
networkProfileNotRecognized
Произошла ошибка при попытке запросить тест скорости.
Поддерживаемые значения:
-
networkSpeedTestInProgress