Se establece una ruta de entrega local cuando Google establece una coincidencia con un dispositivo que se puede controlar de forma local.
a un dispositivo que se devuelve en la SYNC
respuesta de tu entrega en la nube.
Para permitir que Google detecte tu dispositivo en la red local y establecer 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 que
Google conoce 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 de la izquierda, haz clic en Acciones.
- En Configura el SDK de Local Home (opcional) > Agrega la configuración de análisis del dispositivo, haz clic en Nueva configuración de análisis.
- Selecciona un tipo de protocolo de búsqueda coincidente del menú desplegable e ingresa valores para Google para escanear.
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 | Valor de ejemplo |
---|---|---|
Nombre del servicio |
Obligatorio. Nombre del servicio publicado por el dispositivo en el 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 | Valor de ejemplo |
---|---|---|
Tipo de servicio |
Obligatorio. Identificador completamente calificado del servicio UPnP en el formato
domain:service:type:version
|
schemas-upnp-org:service:SwitchPower:1 |
OUI |
Opcional. Identificador único de la organización. Valor de 24 bits que identifica el fabricante del dispositivo. Normalmente, son los primeros tres octetos de la dirección MAC del dispositivo. |
1A:2B:3C |
Atributo | Descripción | Valor de ejemplo |
---|---|---|
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 cadena de bytes con codificación hexadecimal. |
48454C4C4F |
Actualiza la respuesta de SYNC en la entrega en la nube
El intent SYNC
informa a
Asistente, qué dispositivos controla el usuario y cuáles son sus capacidades.
Para admitir la entrega local, la plataforma de la página principal local verifica la respuesta de SYNC
.
de la entrega en la nube de tu Acción de casa inteligente y trata de hacer coincidir el dispositivo
ID del campo otherDeviceIds
para el ID de verificación que devuelve el
IDENTIFY
. Las entradas de dispositivo sin campo otherDeviceIds
se
de la entrega local.
En la
otherDeviceIds
de la respuesta de SYNC
, debes establecer los IDs de los dispositivos de casa inteligente
dispositivos que se pueden controlar de forma local. El campo aparece en el nivel de device
.
en la respuesta. Google puede establecer una ruta de entrega local en cualquier dispositivo con
el ID dado.
Usa el campo customData
para especificar los datos adicionales que Google necesite
conectarse a un dispositivo independiente o orientarlos a dispositivos finales mediante 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 tu 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": "..." } }] } }