Te damos la bienvenida al Centro para desarrolladores de Google Home, el nuevo destino para aprender a desarrollar acciones para el hogar inteligente. Nota: Continuarás compilando acciones en la Consola de Actions.
Organiza tus páginas con colecciones Guarda y categoriza el contenido según tus preferencias.

Esquema de la característica de Control de red de casas inteligentes

action.devices.traits.NetworkControl: Esta característica pertenece a los dispositivos que admiten la creación de informes de datos de red y la realización de operaciones específicas de la red.

ATRIBUTOS DEL Dispositivo

Los dispositivos con esta característica pueden informar los siguientes atributos como parte de la operación SYNC. Para obtener más información sobre cómo manejar los intents SYNC, consulta Entrega de intents.

Atributos Tipo Descripción
supportsEnablingGuestNetwork Booleano

(Predeterminado: false)

Se establece como verdadero si se puede habilitar la red para invitados.

supportsDisablingGuestNetwork Booleano

(Predeterminado: false)

Se establece como verdadero si se puede inhabilitar la red para invitados.

supportsGettingGuestNetworkPassword Booleano

(Predeterminado: false)

Se establece como verdadero si la contraseña de la red para invitados puede obtenerse mediante el comando GetGuestNetworkPassword.

networkProfiles Matriz

Indica los nombres de perfiles de red admitidos.

[item, ...] String

Nombre de un perfil de red que representa un grupo de dispositivos relacionados.

supportsEnablingNetworkProfile Booleano

(Predeterminado: "false")

Se establece como verdadero si se pueden habilitar los perfiles de red.

supportsDisablingNetworkProfile Booleano

(Predeterminado: "false")

Se establece como verdadero si se pueden inhabilitar los perfiles de red.

supportsNetworkDownloadSpeedTest Booleano

(Predeterminado: false)

Se establece como verdadero si se puede ejecutar una prueba de velocidad de descarga.

supportsNetworkUploadSpeedTest Booleano

(Predeterminado: false)

Se establece como verdadero si se puede ejecutar una prueba de velocidad de carga.

Ejemplos

Dispositivo de red que admite la red para invitados, los perfiles y la prueba de velocidad.

{
  "supportsEnablingGuestNetwork": true,
  "supportsDisablingGuestNetwork": true,
  "supportsEnablingNetworkProfile": true,
  "supportsDisablingNetworkProfile": true,
  "supportsNetworkDownloadSpeedTest": true,
  "supportsNetworkUploadSpeedTest": true,
  "supportsGettingGuestNetworkPassword": true,
  "networkProfiles": [
    "Kids"
  ]
}

Dispositivo STATEs

Las entidades con esta característica pueden informar los siguientes estados como parte de la operación QUERY. Para obtener más información sobre cómo manejar los intents QUERY, consulta Entrega de intents.

Estados Tipo Descripción
networkEnabled Booleano

Indica si la red principal está habilitada.

networkSettings Objeto

Contiene el SSID de la red principal.

ssid String

Obligatorio.

SSID de red

guestNetworkEnabled Booleano

Indica si la red para invitados está habilitada.

guestNetworkSettings Objeto

Contiene el SSID de la red para invitados.

ssid String

Obligatorio.

SSID de red

numConnectedDevices Número entero

La cantidad de dispositivos conectados a la red.

networkUsageMB Número

El uso de red en MB (megabytes). El uso de red se encuentra dentro del período de facturación actual, lo que puede ser útil para supervisar con respecto a un límite de uso de red del período de facturación.

networkUsageLimitMB Número

El límite de uso de la red en MB (megabytes). El límite de uso de la red se encuentra dentro del período de facturación actual.

networkUsageUnlimited Booleano

Si el uso de la red es ilimitado Si se establece como verdadera, se ignorará el estado de red networkUsageLimitMB.

lastNetworkDownloadSpeedTest Objeto

Contiene los resultados de la prueba de velocidad de descarga de red más reciente.

downloadSpeedMbps Número

Es la velocidad de descarga en Mbps (megabits por segundo) de la última prueba de velocidad de red.

unixTimestampSec Número entero

La marca de tiempo de Unix (cantidad de segundos desde la época Unix) del momento en que se ejecutó la última prueba de velocidad de descarga de red.

status String

Indica si la última prueba de velocidad de descarga de red se realizó correctamente o no.

Valores admitidos:

SUCCESS
FAILURE
lastNetworkUploadSpeedTest Objeto

Contiene los resultados de la prueba de velocidad de carga de red más reciente.

uploadSpeedMbps Número

Es la velocidad de carga en Mbps (megabits por segundo) de la última prueba de velocidad de red.

unixTimestampSec Número entero

La marca de tiempo de Unix (cantidad de segundos desde la época Unix) del momento en que se ejecutó la última prueba de velocidad de carga de red.

status String

Indica si la última prueba de velocidad de carga de red se realizó correctamente o no.

Valores admitidos:

SUCCESS
FAILURE
networkSpeedTestInProgress Booleano

(Predeterminado: false)

Si se está ejecutando una prueba de velocidad

networkProfilesState Objeto

Estado de los perfiles de red. Este objeto de nivel superior debe contener pares clave-valor en los que la clave sea el nombre de uno de los perfiles de red enumerados en el atributo networkProfiles y el valor debería ser el estado correspondiente de ese perfil.

<string> Objeto

Un objeto que almacena el estado de un perfil de red individual. El valor de la clave debe ser el nombre de uno de los perfiles de red en el atributo networkProfiles.

enabled Booleano

Es el estado actual habilitado o inhabilitado del perfil de red.

Ejemplos

Dispositivo con una red activa

{
  "networkEnabled": true,
  "networkSettings": {
    "ssid": "home-network-123"
  },
  "guestNetworkSettings": {
    "ssid": "home-network-123-guest"
  },
  "numConnectedDevices": 4,
  "networkUsageMB": 100.8
}

Dispositivo con una red activa y resultados de la prueba de velocidad.

{
  "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 con una red activa y prueba de velocidad en curso.

{
  "networkEnabled": true,
  "networkSettings": {
    "ssid": "home-network-123"
  },
  "guestNetworkSettings": {
    "ssid": "home-network-123-guest"
  },
  "numConnectedDevices": 4,
  "networkUsageMB": 100.8,
  "networkSpeedTestInProgress": true
}

Dispositivo con el perfil de red "niños" inhabilitado

{
  "networkEnabled": true,
  "networkSettings": {
    "ssid": "home-network-123"
  },
  "networkProfilesState": {
    "parents": {
      "enabled": true
    },
    "kids": {
      "enabled": false
    }
  }
}

Dispositivo COMMAND

Los dispositivos con esta característica pueden responder a los siguientes comandos como parte de la operación EXECUTE. Para obtener más información sobre cómo manejar los intents EXECUTE, consulta Entrega de intents.

action.devices.commands.EnableDisableGuestNetwork

Habilita o inhabilita la red para invitados. Se debe usar la verificación del usuario secundario con un PIN. La seguridad doméstica de un usuario puede considerarse afectada si otros dispositivos de seguridad están inhabilitados mediante estos comandos.

Este comando requiere los siguientes atributos:
{
  "supportsEnablingGuestNetwork": true,
  "supportsDisablingGuestNetwork": true
}

Parámetros

Parámetros Tipo Descripción
enable Booleano

Obligatorio.

Si esta preferencia se establece como "true", se habilita la red para invitados y "false" para inhabilitarla.

Ejemplos

Activa la red para invitados.

{
  "command": "action.devices.commands.EnableDisableGuestNetwork",
  "params": {
    "enable": true
  }
}

action.devices.commands.EnableDisableNetworkProfile

Habilita o inhabilita un perfil de red. Se debe usar la verificación del usuario secundario con un PIN. La seguridad doméstica de un usuario puede considerarse afectada si otros dispositivos de seguridad están inhabilitados mediante estos comandos.

Este comando requiere los siguientes atributos:
{
  "supportsEnablingNetworkProfile": true,
  "supportsDisablingNetworkProfile": true
}

Parámetros

Parámetros Tipo Descripción
profile String

Obligatorio.

El nombre de perfil del atributo networkProfiles.

enable Booleano

Obligatorio.

Si esta preferencia se establece como "true", se habilita el perfil y "false" para inhabilitarlo.

Ejemplos

Desactiva Internet para los niños.

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

Se produjo un error al intentar controlar el perfil de red determinado.

Valores admitidos:

networkProfileNotRecognized

action.devices.commands.GetGuestNetworkPassword

Obtén la contraseña de la red para invitados. Se debe usar la verificación del usuario secundario con un PIN. La seguridad doméstica de un usuario puede considerarse afectada si otros dispositivos de seguridad están inhabilitados mediante estos comandos.

Este comando requiere los siguientes atributos:
{
  "supportsGettingGuestNetworkPassword": true
}

Parámetros

Parámetros Tipo Descripción

Sin propiedades

Ejemplos

Muéstrame la contraseña de Wi-Fi para invitados.

{
  "command": "action.devices.commands.GetGuestNetworkPassword",
  "params": {}
}

Resultados

Resultados Tipo Descripción
guestNetworkPassword String

Obligatorio.

La contraseña de la red para invitados

Ejemplos

Muéstrame la contraseña de Wi-Fi para invitados.

{
  "guestNetworkPassword": "123456"
}

action.devices.commands.TestNetworkSpeed

Prueba la velocidad de carga y descarga de la red.

Este comando requiere los siguientes atributos:
{
  "supportsNetworkDownloadSpeedTest": true,
  "supportsNetworkUploadSpeedTest": true
}

Parámetros

Parámetros Tipo Descripción
testDownloadSpeed Booleano

Obligatorio.

Indica si se debe probar la velocidad de descarga.

testUploadSpeed Booleano

Obligatorio.

Indica si se debe probar la velocidad de carga.

followUpToken String

Obligatorio.

Token proporcionado por Google para la respuesta de seguimiento

Ejemplos

¿Cuál es la velocidad de la conexión Wi-Fi?

{
  "command": "action.devices.commands.TestNetworkSpeed",
  "params": {
    "testDownloadSpeed": true,
    "testUploadSpeed": true,
    "followUpToken": "123"
  }
}

Se produjo un error al solicitar una prueba de velocidad.

Valores admitidos:

networkSpeedTestInProgress

Respuestas de seguimiento

Los dispositivos con esta característica pueden mostrar la siguiente carga útil de respuesta de seguimiento como parte de la operación EXECUTE. Para obtener más información acerca de cómo implementar respuestas de seguimiento, consulta Notificaciones de Acciones de casa inteligente.

La carga útil contiene una de las siguientes opciones:

Éxito: networkDownloadSpeedMbps

Campos Tipo Descripción
followUpToken String

Obligatorio.

El token proporcionado en la solicitud EXECUTE original.

status String

Obligatorio.

Resultado de la solicitud.

Valores admitidos:

SUCCESS
networkDownloadSpeedMbps Número

Obligatorio.

Es la velocidad de descarga de la red medida en megabits por segundo.

Éxito: networkUploadSpeedMbps

Campos Tipo Descripción
followUpToken String

Obligatorio.

El token proporcionado en la solicitud EXECUTE original.

status String

Obligatorio.

Resultado de la solicitud.

Valores admitidos:

SUCCESS
networkUploadSpeedMbps Número

Obligatorio.

Es la velocidad de carga de la red medida en megabits por segundo.

Éxito: networkDownloadSpeedMbps y networkUploadSpeedMbps

Campos Tipo Descripción
followUpToken String

Obligatorio.

El token proporcionado en la solicitud EXECUTE original.

status String

Obligatorio.

Resultado de la solicitud.

Valores admitidos:

SUCCESS
networkDownloadSpeedMbps Número

Obligatorio.

Es la velocidad de descarga de la red medida en megabits por segundo.

networkUploadSpeedMbps Número

Obligatorio.

Es la velocidad de carga de la red medida en megabits por segundo.

Error

Campos Tipo Descripción
followUpToken String

Obligatorio.

El token proporcionado en la solicitud EXECUTE original.

status String

Obligatorio.

Resultado de la solicitud.

Valores admitidos:

FAILURE
errorCode String

Obligatorio.

El valor puede ser cualquier código de error para esta característica, por ejemplo, transientError.

Ejemplos

¿Cuál es la velocidad de la conexión Wi-Fi? (respuesta de seguimiento)

{
  "NetworkControl": {
    "priority": 0,
    "followUpResponse": {
      "status": "SUCCESS",
      "networkDownloadSpeedMbps": 23.3,
      "networkUploadSpeedMbps": 10.2,
      "followUpToken": "1234"
    }
  }
}

¿Cuál es la velocidad de la conexión Wi-Fi? (respuesta de seguimiento con errores)

{
  "NetworkControl": {
    "priority": 0,
    "followUpResponse": {
      "status": "FAILURE",
      "errorCode": "transientError",
      "followUpToken": "1234"
    }
  }
}

Dispositivo ERRORS

Consulta la lista completa de errores y excepciones.

Se produjo un error al intentar controlar el perfil de red determinado.

Valores admitidos:

networkProfileNotRecognized

Se produjo un error al solicitar una prueba de velocidad.

Valores admitidos:

networkSpeedTestInProgress