Esquema de atributo NetworkControl da casa inteligente
action.devices.traits.NetworkControl: essa característica pertence a dispositivos que oferecem suporte para informar dados de rede e realizar operações específicas de rede.
ATRIBUTOS do dispositivo
Dispositivos com essa característica podem informar os seguintes
atributos como parte da operação SYNC. Para saber
mais sobre o processamento de intents SYNC, consulte
Fulfillment de intents.
| Atributos | Tipo | Descrição |
|---|---|---|
supportsEnablingGuestNetwork |
Booleano |
Padrão: Defina como "true" 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 obtida pelo comando |
networkProfiles |
Array |
Indica os nomes dos 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 "true" 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: Definido como verdadeiro se um teste de velocidade de download puder ser executado. |
supportsNetworkUploadSpeedTest |
Booleano |
Padrão: Defina como "true" se um teste de velocidade de upload puder ser executado. |
Exemplos
Dispositivo de rede compatível com rede para visitantes, perfis e teste de velocidade.
{ "supportsEnablingGuestNetwork": true, "supportsDisablingGuestNetwork": true, "supportsEnablingNetworkProfile": true, "supportsDisablingNetworkProfile": true, "supportsNetworkDownloadSpeedTest": true, "supportsNetworkUploadSpeedTest": true, "supportsGettingGuestNetworkPassword": true, "networkProfiles": [ "Kids" ] }
ESTADOS DO DISPOSITIVO
As entidades com essa característica podem informar os seguintes
estados como parte da operação QUERY. Para saber
mais sobre o processamento de intents QUERY, consulte
Fulfillment de intents.
| 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á dentro do período de faturamento atual, o que pode ser útil para monitorar o limite de uso da rede em um 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 essa opção for definida como verdadeira. |
lastNetworkDownloadSpeedTest |
Object |
Contém os resultados do teste de velocidade de download de rede mais recente. |
downloadSpeedMbps |
Número |
A velocidade de download em Mbps (megabits por segundo) do último teste de velocidade de rede. |
unixTimestampSec |
Número inteiro |
O carimbo de data/hora do Unix (número de segundos desde a época Unix) de quando o último teste de velocidade de download de rede foi executado. |
status |
String |
Indica se o último teste de velocidade de download de rede foi bem-sucedido ou não. Valores aceitos:
|
lastNetworkUploadSpeedTest |
Object |
Contém os resultados do teste de velocidade de upload de rede mais recente. |
uploadSpeedMbps |
Número |
A velocidade de upload em Mbps (megabits por segundo) do último teste de velocidade de 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 de rede foi executado. |
status |
String |
Indica se o último teste de velocidade de upload de rede foi bem-sucedido ou não. Valores aceitos:
|
networkSpeedTestInProgress |
Booleano |
Padrão: Se um teste de velocidade está sendo executado. |
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 de 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 de 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 o "kids" 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 aos comandos
abaixo como parte da operação EXECUTE. Para saber
mais sobre o processamento de intents EXECUTE, consulte
Fulfillment de intents.
action.devices.commands.EnableDisableGuestNetwork
Ative ou desative a rede para visitantes. A verificação secundária do usuário com PIN precisa ser usada. A segurança doméstica de um usuário pode ser considerada afetada se outros dispositivos de segurança forem desativados por esses comandos.
Este comando requer os seguintes atributos:
{
"supportsEnablingGuestNetwork": true,
"supportsDisablingGuestNetwork": true
}
Parâmetros
| Parâmetros | Tipo | Descrição |
|---|---|---|
enable |
Booleano |
Obrigatório. True para ativar a rede para visitantes, false para desativar. |
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. A verificação secundária do usuário com PIN precisa ser usada. A segurança doméstica de um usuário pode ser considerada afetada se outros dispositivos de segurança forem desativados por esses comandos.
Este 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 desativar. |
Exemplos
Desligue 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 especificado.
Valores aceitos:
networkProfileNotRecognized
action.devices.commands.GetGuestNetworkPassword
Anote a senha da rede para visitantes. A verificação secundária do usuário com PIN precisa ser usada. A segurança doméstica de um usuário pode ser considerada afetada se outros dispositivos de segurança forem desativados por esses comandos.
Este 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.
Este 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 a 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 tentar solicitar um teste de velocidade.
Valores aceitos:
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 para ações de casa inteligente.
O payload contém um dos seguintes:
Sucesso: networkDownloadSpeedMbps
| Campos | Tipo | Descrição |
|---|---|---|
followUpToken |
String |
Obrigatório. Token fornecido na solicitação EXECUTAR original. |
status |
String |
Obrigatório. Resultado da solicitação. Valores aceitos:
|
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 EXECUTAR original. |
status |
String |
Obrigatório. Resultado da solicitação. Valores aceitos:
|
networkUploadSpeedMbps |
Número |
Obrigatório. A 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 EXECUTAR original. |
status |
String |
Obrigatório. Resultado da solicitação. Valores aceitos:
|
networkDownloadSpeedMbps |
Número |
Obrigatório. A velocidade de download da rede medida em megabits por segundo. |
networkUploadSpeedMbps |
Número |
Obrigatório. A velocidade de upload da rede medida em megabits por segundo. |
Falha
| Campos | Tipo | Descrição |
|---|---|---|
followUpToken |
String |
Obrigatório. Token fornecido na solicitação EXECUTAR original. |
status |
String |
Obrigatório. Resultado da solicitação. Valores aceitos:
|
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 do dispositivo
Confira a lista completa de erros e exceções.Ocorreu um erro ao tentar controlar o perfil de rede especificado.
Valores aceitos:
networkProfileNotRecognized
Ocorreu um erro ao tentar solicitar um teste de velocidade.
Valores aceitos:
networkSpeedTestInProgress