Esquema do traço NetworkControl de casa inteligente
action.devices.traits.NetworkControl
: essa característica pertence a dispositivos compatíveis com relatórios de dados de rede e execução de operações específicas da rede.
ATRIBUTOS DO dispositivo
Dispositivos com essa característica podem relatar o seguinte
atributos como parte da operação SYNC
. Para saber
mais sobre como lidar com intents SYNC
, consulte
Fulfillment da intent.
Atributos | Tipo | Descrição |
---|---|---|
supportsEnablingGuestNetwork |
Booleano |
Padrão: Defina como verdadeiro se a rede para visitantes puder ser ativada. |
supportsDisablingGuestNetwork |
Booleano |
Padrão: Defina como verdadeiro se a rede para visitantes puder ser desativada. |
supportsGettingGuestNetworkPassword |
Booleano |
Padrão: Defina como "true" se a senha da rede para visitantes puder ser recebida pelo comando |
networkProfiles |
Array |
Indica os nomes de perfis de rede compatíveis. |
[item, ...] |
String |
Nome de um perfil de rede que representa um grupo de dispositivos relacionados. |
supportsEnablingNetworkProfile |
Booleano |
Padrão: Defina como verdadeiro se os perfis de rede puderem ser ativados. |
supportsDisablingNetworkProfile |
Booleano |
Padrão: Defina como verdadeiro se os perfis de rede puderem ser desativados. |
supportsNetworkDownloadSpeedTest |
Booleano |
Padrão: Defina como "true" se for possível fazer um teste de velocidade de download. |
supportsNetworkUploadSpeedTest |
Booleano |
Padrão: Defina como "true" se for possível fazer um teste de velocidade de upload. |
Exemplos
Dispositivo de rede com suporte para rede para visitantes, perfis e teste de velocidade.
{ "supportsEnablingGuestNetwork": true, "supportsDisablingGuestNetwork": true, "supportsEnablingNetworkProfile": true, "supportsDisablingNetworkProfile": true, "supportsNetworkDownloadSpeedTest": true, "supportsNetworkUploadSpeedTest": true, "supportsGettingGuestNetworkPassword": true, "networkProfiles": [ "Kids" ] }
STATES do dispositivo
Entidades com essa característica podem relatar o seguinte
como parte da operação QUERY
. Para saber
mais sobre como lidar com intents QUERY
, consulte
Fulfillment da intent.
Estados | Tipo | Descrição |
---|---|---|
networkEnabled |
Booleano |
Se a rede principal está ativada. |
networkSettings |
Object |
Contém o SSID da rede principal. |
ssid |
String |
Obrigatório. SSID da rede. |
guestNetworkEnabled |
Booleano |
Se a rede para visitantes está ativada. |
guestNetworkSettings |
Object |
Contém o SSID da rede para visitantes. |
ssid |
String |
Obrigatório. SSID da rede. |
numConnectedDevices |
Número inteiro |
O número de dispositivos conectados à rede. |
networkUsageMB |
Número |
O uso da rede em MB (megabytes). O uso da rede está no período de faturamento atual, o que pode ser útil para monitorar o limite de uso da rede do período de faturamento. |
networkUsageLimitMB |
Número |
O limite de uso da rede em MB (megabytes). O limite de uso da rede está dentro do período de faturamento atual. |
networkUsageUnlimited |
Booleano |
Se o uso da rede é ilimitado. O estado do dispositivo networkUsageLimitMB será ignorado se for definido como "true". |
lastNetworkDownloadSpeedTest |
Object |
Contém os resultados do teste de velocidade de download da rede mais recente. |
downloadSpeedMbps |
Número |
A velocidade de download em Mbps (megabits por segundo) do último teste de velocidade da rede. |
unixTimestampSec |
Número inteiro |
É o carimbo de data/hora Unix (número de segundos desde a época Unix) de quando o último teste de velocidade de download da rede foi executado. |
status |
String |
Indica se o último teste de velocidade de download da rede foi bem-sucedido ou não. Valores compatíveis:
|
lastNetworkUploadSpeedTest |
Object |
Contém os resultados do teste de velocidade de upload da rede mais recente. |
uploadSpeedMbps |
Número |
A velocidade de upload em Mbps (megabits por segundo) do último teste de velocidade da rede. |
unixTimestampSec |
Número inteiro |
É o carimbo de data/hora Unix (número de segundos desde a época Unix) de quando o último teste de velocidade de upload da rede foi executado. |
status |
String |
Indica se o último teste de velocidade de upload da rede foi bem-sucedido ou não. Valores compatíveis:
|
networkSpeedTestInProgress |
Booleano |
Padrão: Se um teste de velocidade está sendo executado no momento. |
networkProfilesState |
Object |
Estado dos perfis de rede. Esse objeto de nível superior precisa conter pares de chave-valor em que a chave é o nome de um dos perfis de rede listados no atributo |
<string> |
Object |
Um objeto que armazena o estado de um perfil de rede individual. O valor da chave |
enabled |
Booleano |
O estado atual ativado/desativado do perfil de rede. |
Exemplos
Dispositivo com uma rede ativa.
{ "networkEnabled": true, "networkSettings": { "ssid": "home-network-123" }, "guestNetworkSettings": { "ssid": "home-network-123-guest" }, "numConnectedDevices": 4, "networkUsageMB": 100.8 }
Dispositivo com uma rede ativa e resultados do teste de velocidade.
{ "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" } }
Dispositivo com uma rede ativa e um teste de velocidade em andamento.
{ "networkEnabled": true, "networkSettings": { "ssid": "home-network-123" }, "guestNetworkSettings": { "ssid": "home-network-123-guest" }, "numConnectedDevices": 4, "networkUsageMB": 100.8, "networkSpeedTestInProgress": true }
Dispositivo com "infantil" networkProfile desativado.
{ "networkEnabled": true, "networkSettings": { "ssid": "home-network-123" }, "networkProfilesState": { "parents": { "enabled": true }, "kids": { "enabled": false } } }
COMANDOS DO dispositivo
Dispositivos com essa característica podem responder ao seguinte
como parte da operação EXECUTE
. Para saber
mais sobre como lidar com intents EXECUTE
, consulte
Fulfillment da intent.
action.devices.commands.EnableDisableGuestNetwork
Ativar ou desativar a rede para visitantes. É necessário usar a verificação secundária do usuário com um PIN. A segurança residencial de um usuário pode ser considerada afetada se outros dispositivos de segurança forem desativados com esses comandos.
Esse comando requer os seguintes atributos:{ "supportsEnablingGuestNetwork": true, "supportsDisablingGuestNetwork": true }
Parâmetros
Parâmetros | Tipo | Descrição |
---|---|---|
enable |
Booleano |
Obrigatório. Verdadeiro para ativar a rede para visitantes, falso para desativar a rede para visitantes. |
Exemplos
Ative a rede para visitantes.
{ "command": "action.devices.commands.EnableDisableGuestNetwork", "params": { "enable": true } }
action.devices.commands.EnableDisableNetworkProfile
Ativar ou desativar um perfil de rede. É necessário usar a verificação secundária do usuário com um PIN. A segurança residencial de um usuário pode ser considerada afetada se outros dispositivos de segurança forem desativados com esses comandos.
Esse comando requer os seguintes atributos:{ "supportsEnablingNetworkProfile": true, "supportsDisablingNetworkProfile": true }
Parâmetros
Parâmetros | Tipo | Descrição |
---|---|---|
profile |
String |
Obrigatório. O nome do perfil do atributo |
enable |
Booleano |
Obrigatório. "True" para ativar o perfil, "false" para desativá-lo. |
Exemplos
Desative a Internet para as crianças.
{ "command": "action.devices.commands.EnableDisableNetworkProfile", "params": { "profile": "Kids", "enable": false } }
Erros relacionados
Ocorreu um erro ao tentar controlar o perfil de rede fornecido.
Valores compatíveis:
networkProfileNotRecognized
action.devices.commands.GetGuestNetworkPassword
Descubra a senha da rede para visitantes. É necessário usar a verificação secundária do usuário com um PIN. A segurança residencial de um usuário pode ser considerada afetada se outros dispositivos de segurança forem desativados com esses comandos.
Esse comando requer os seguintes atributos:{ "supportsGettingGuestNetworkPassword": true }
Parâmetros
Parâmetros | Tipo | Descrição |
---|---|---|
Não há propriedades |
Exemplos
Mostrar minha senha do Wi-Fi para visitantes.
{ "command": "action.devices.commands.GetGuestNetworkPassword", "params": {} }
Resultados
Resultados | Tipo | Descrição |
---|---|---|
guestNetworkPassword |
String |
Obrigatório. A senha da rede para visitantes. |
Exemplos
Mostrar minha senha do Wi-Fi para visitantes.
{ "guestNetworkPassword": "123456" }
action.devices.commands.TestNetworkSpeed
Teste a velocidade de download e upload da rede.
Esse comando requer os seguintes atributos:{ "supportsNetworkDownloadSpeedTest": true, "supportsNetworkUploadSpeedTest": true }
Parâmetros
Parâmetros | Tipo | Descrição |
---|---|---|
testDownloadSpeed |
Booleano |
Obrigatório. Indica se a velocidade de download precisa ser testada. |
testUploadSpeed |
Booleano |
Obrigatório. Indica se a velocidade de upload precisa ser testada. |
followUpToken |
String |
Obrigatório. Token fornecido pelo Google para resposta de acompanhamento. |
Exemplos
Qual é a velocidade do Wi-Fi?
{ "command": "action.devices.commands.TestNetworkSpeed", "params": { "testDownloadSpeed": true, "testUploadSpeed": true, "followUpToken": "123" } }
Erros relacionados
Ocorreu um erro ao solicitar um teste de velocidade.
Valores compatíveis:
networkSpeedTestInProgress
Respostas de acompanhamento
Dispositivos com essa característica podem retornar o seguinte
payload de resposta de acompanhamento como parte da operação EXECUTE
. Para saber
mais sobre a implementação de respostas de acompanhamento, consulte
Notificações de ações de casa inteligente.
O payload contém um dos seguintes itens:
Sucesso: networkDownloadSpeedMbps
Campos | Tipo | Descrição |
---|---|---|
followUpToken |
String |
Obrigatório. Token fornecido na solicitação EXECUTE original. |
status |
String |
Obrigatório. Resultado da solicitação. Valores compatíveis:
|
networkDownloadSpeedMbps |
Número |
Obrigatório. A velocidade de download da rede medida em megabits por segundo. |
Sucesso: networkUploadSpeedMbps
Campos | Tipo | Descrição |
---|---|---|
followUpToken |
String |
Obrigatório. Token fornecido na solicitação EXECUTE original. |
status |
String |
Obrigatório. Resultado da solicitação. Valores compatíveis:
|
networkUploadSpeedMbps |
Número |
Obrigatório. Velocidade de upload da rede medida em megabits por segundo. |
Sucesso: networkDownloadSpeedMbps e networkUploadSpeedMbps
Campos | Tipo | Descrição |
---|---|---|
followUpToken |
String |
Obrigatório. Token fornecido na solicitação EXECUTE original. |
status |
String |
Obrigatório. Resultado da solicitação. Valores compatíveis:
|
networkDownloadSpeedMbps |
Número |
Obrigatório. A velocidade de download da rede medida em megabits por segundo. |
networkUploadSpeedMbps |
Número |
Obrigatório. Velocidade de upload da rede medida em megabits por segundo. |
Falha
Campos | Tipo | Descrição |
---|---|---|
followUpToken |
String |
Obrigatório. Token fornecido na solicitação EXECUTE original. |
status |
String |
Obrigatório. Resultado da solicitação. Valores compatíveis:
|
errorCode |
String |
Obrigatório. O valor pode ser qualquer código de erro para essa característica, por exemplo, |
Exemplos
Qual é a velocidade do Wi-Fi? (resposta de acompanhamento)
{ "NetworkControl": { "priority": 0, "followUpResponse": { "status": "SUCCESS", "networkDownloadSpeedMbps": 23.3, "networkUploadSpeedMbps": 10.2, "followUpToken": "1234" } } }
Qual é a velocidade do Wi-Fi? (resposta de acompanhamento com falha)
{ "NetworkControl": { "priority": 0, "followUpResponse": { "status": "FAILURE", "errorCode": "transientError", "followUpToken": "1234" } } }
ERROS no dispositivo
Veja a lista completa de erros e exceções.Ocorreu um erro ao tentar controlar o perfil de rede fornecido.
Valores compatíveis:
networkProfileNotRecognized
Ocorreu um erro ao solicitar um teste de velocidade.
Valores compatíveis:
networkSpeedTestInProgress