Esta é a Central do desenvolvedor do Google Home, a nova plataforma para aprender a desenvolver ações de casa inteligente. Observação: você continua criando ações no Console do Actions.
Mantenha tudo organizado com as coleções Salve e categorize o conteúdo com base nas suas preferências.

Esquema de características do controle de rede inteligente de casa

action.devices.traits.NetworkControl: essa característica pertence a dispositivos compatíveis com a geração de relatórios de dados de rede e a execução de 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 como processar intents SYNC, consulte fulfillment de intent.

Atributos Tipo Descrição
supportsEnablingGuestNetwork Booleano

Padrão: false.

Defina como "true" se a rede para visitantes puder ser ativada.

supportsDisablingGuestNetwork Booleano

Padrão: false.

Defina como "true" se a rede para visitantes puder ser desativada.

supportsGettingGuestNetworkPassword Booleano

Padrão: false.

Defina como "true" se a senha da rede para visitantes puder ser recebida usando o comando GetGuestNetworkPassword.

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: "false".

Defina como "true" se os perfis de rede puderem ser ativados.

supportsDisablingNetworkProfile Booleano

Padrão: "false".

Defina como "true" se os perfis de rede puderem ser desativados.

supportsNetworkDownloadSpeedTest Booleano

Padrão: false.

Defina como "true" se um teste de velocidade de download puder ser executado.

supportsNetworkUploadSpeedTest Booleano

Padrão: false.

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"
  ]
}

STATES do dispositivo

Entidades com essa característica podem relatar os estados a seguir como parte da operação QUERY. Para saber mais sobre como processar intents QUERY, consulte fulfillment de intent.

Estados Tipo Descrição
networkEnabled Booleano

Indica 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.

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 da rede networkUsageLimitMB será ignorado se for definido como verdadeiro.

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 do 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 concluído ou falhou.

Os valores suportados são:

SUCCESS
FAILURE
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 do 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 concluído ou falhou.

Os valores suportados são:

SUCCESS
FAILURE
networkSpeedTestInProgress Booleano

Padrão: false.

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 networkProfiles e o valor precisa ser o estado correspondente desse perfil.

<string> Object

Um objeto que armazena o estado de um perfil de rede individual. O valor da chave precisa ser o nome de um dos perfis de rede no atributo networkProfiles.

enabled Booleano

O estado ativado/desativado atual do perfil de rede.

Exemplos

Dispositivo com 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 rede ativa e 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 networkProfile "kids" 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 seguintes comandos como parte da operação EXECUTE. Para saber mais sobre como processar intents EXECUTE, consulte fulfillment de intent.

action.devices.commands.EnableDisableGuestNetwork

Ative ou desative a rede para visitantes. É necessário usar a verificação de usuário secundária com o 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 de usuário secundária com o 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 networkProfiles.

enable Booleano

Obrigatório.

Verdadeiro para ativar o perfil, falso para desativar o perfil.

Exemplos

Desativar a Internet para as crianças

{
  "command": "action.devices.commands.EnableDisableNetworkProfile",
  "params": {
    "profile": "Kids",
    "enable": false
  }
}

Ocorreu um erro ao tentar controlar o perfil de rede fornecido.

Os valores suportados são:

networkProfileNotRecognized

action.devices.commands.GetGuestNetworkPassword

Encontre a senha da rede para visitantes. É necessário usar a verificação de usuário secundária com o 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 é testada.

testUploadSpeed Booleano

Obrigatório.

Indica se a velocidade de upload deve 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"
  }
}

Ocorreu um erro ao tentar solicitar um teste de velocidade.

Os valores suportados são:

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 como implementar 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.

Os valores suportados são:

SUCCESS
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.

Os valores suportados são:

SUCCESS
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 EXECUTE original.

status String

Obrigatório.

Resultado da solicitação.

Os valores suportados são:

SUCCESS
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 EXECUTE original.

status String

Obrigatório.

Resultado da solicitação.

Os valores suportados são:

FAILURE
errorCode String

Obrigatório.

O valor pode ser qualquer código de erro dessa característica, por exemplo, transientError.

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"
    }
  }
}

Dispositivo ERRORS

Veja a lista completa de erros e exceções.

Ocorreu um erro ao tentar controlar o perfil de rede fornecido.

Os valores suportados são:

networkProfileNotRecognized

Ocorreu um erro ao tentar solicitar um teste de velocidade.

Os valores suportados são:

networkSpeedTestInProgress