Se establece una ruta de entrega local cuando Google hace coincidir un dispositivo con control local con un dispositivo que se muestra en la respuesta SYNC
de tu entrega en la nube.
Para permitir que Google descubra tu dispositivo en la red local y establezca la ruta de entrega local, debes agregar información de descubrimiento en la Consola de Actions.
También debes actualizar la respuesta SYNC
de tu entrega en la nube para informar a Google sobre el dispositivo que se puede controlar de forma local.
Establece la información de configuración de análisis
Para especificar la información de descubrimiento, sigue estos pasos:
- Abre tu proyecto de casa inteligente en la Consola de Actions.
- En el panel de navegación izquierdo, haz clic en Acciones.
- En Configure local home SDK (optional) > Agregar configuración de análisis de dispositivos, haz clic en New análisis config.
- Selecciona un tipo de protocolo de coincidencia de análisis del menú desplegable y, luego, ingresa valores para que Google los analice.
En las siguientes tablas, se muestran los atributos que puedes agregar según los protocolos que quieres que Google use para buscar tu dispositivo:
Atributo | Descripción | Example Value |
---|---|---|
Nombre del servicio |
Obligatorio. Es el nombre del servicio que publica el dispositivo en formato service.domain .
|
_http._tcp.local |
Nombre |
Obligatorio. Filtra por una instancia de servicio única en el formato |
my-device-[0-9]{4}\._http\._tcp\.local |
Atributo | Descripción | Example Value |
---|---|---|
Tipo de servicio |
Obligatorio. Es el identificador completamente calificado del servicio UPnP en el formato domain:service:type:version .
|
schemas-upnp-org:service:SwitchPower:1 |
OUI |
Opcional. Identificador único organizacional. Valor de 24 bits que identifica al fabricante del dispositivo Por lo general, son los primeros tres octetos de la dirección MAC del dispositivo. |
1A:2B:3C |
Atributo | Descripción | Example Value |
---|---|---|
Dirección de transmisión | Obligatorio. Dirección IP de destino para la transmisión UDP. | 255.255.255.255 |
Puerto de transmisión | Obligatorio. Puerto de destino para la transmisión UDP. | 5555 |
Puerto de escucha | Obligatorio. Puerto de escucha para la respuesta de detección de UDP. | 5556 |
Paquete de descubrimiento | Obligatorio. Carga útil para enviar en la transmisión UDP. Tiene el formato de una string de bytes codificada en hexadecimal. |
48454C4C4F |
Actualiza la respuesta SYNC en la entrega en la nube
El intent SYNC
informa al Asistente qué dispositivos controla el usuario y sus capacidades.
Para admitir la entrega local, la plataforma de Local Home verifica la respuesta SYNC
de la entrega en la nube de tu Acción de casa inteligente y trata de hacer coincidir los ID de dispositivos del campo otherDeviceIds
con el ID de verificación que muestra el controlador IDENTIFY
. Las entradas de dispositivo sin un campo otherDeviceIds
se excluyen de la entrega local.
En el campo otherDeviceIds
de la respuesta de SYNC
, debes establecer los IDs de los dispositivos de casa inteligente que se pueden controlar de forma local. El campo aparece en el nivel de device
de la respuesta. Google puede establecer una ruta de entrega local en cualquier dispositivo con el ID determinado.
Usa el campo customData
para especificar los datos adicionales que Google necesita conectar a un dispositivo independiente o para orientar los dispositivos finales a través de un concentrador (por ejemplo, el número de puerto y otra información específica del protocolo).
Ejemplo
En el siguiente fragmento, se muestra cómo puedes crear el controlador SYNC
.
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "agentUserId": "1836.15267389", "devices": [{ "id": "123", "type": "action.devices.types.OUTLET", "traits": [ "action.devices.traits.OnOff" ], "name": { "name": "Night light" }, "willReportState": false, "otherDeviceIds": [{ "deviceId": "local-device-id" }], "customData": { "port": 5555, "authToken": "..." } }] } }