Los eventos son asíncronos y los administra Google Cloud Pub/Sub, en un solo tema por ProjectLos eventos proporcionan actualizaciones para todos los dispositivos y estructuras, y la recepción de eventos es garantizado siempre que el usuario no revoque el token de acceso y los mensajes de evento no se hayan y que ya venció.
Los eventos son una función opcional de la API de SDM. Pueden implementar y verificarse fácilmente con tu cuenta de Google Cloud en un proyecto final.
Habilitar eventos
Los eventos se pueden habilitar en la Device Access consola. Selecciona tu proyecto Console, si aún no lo hiciste.
Si ya habilitaste eventos (por ejemplo, durante las campañas del proyecto creación), el campo Tema de Pub/Sub de la sección Información del proyecto ya debería tener la de conv., llamado ID del tema, en el formato:
projects/sdm-prod/topics/enterprise-project-id
Si no habilitaste los eventos, haz lo siguiente:
- Haz clic en el ícono para Pub/Sub tema y selecciona Editar.
- Marca Habilitar eventos y haz clic en Guardar.
- Se genera un ID de tema para ti en el formato que se muestra arriba.
Copia el ID del tema; lo necesitarás para crear una suscripción al tema. de eventos de calendario.
Crea una suscripción de extracción
En una suscripción de extracción, el suscriptor inicia solicitudes a Pub/Sub para los mensajes de eventos en cola. Esta es una forma rápida y fácil de verificar que se están generando eventos para tus dispositivos autorizados.
Abre Cloud Shell para tu proyecto de Google Cloud:
En el símbolo del sistema de Cloud Shell, ejecuta el siguiente comando para crear una extracción suscripción a tu tema, con el subscription-id que quieras y tu ID del tema único:
gcloud pubsub subscriptions create subscription-id --topic=projects/sdm-prod/topics/enterprise-project-id
Created subscription [projects/gcp-project-name/subscriptions/subscription-id].
Inicia eventos
Para iniciar eventos por primera vez una vez que la suscripción a Pub/Sub se haya creado, haz una llamada para mostrar tus dispositivos como un activador único:
curl -X GET 'https://smartdevicemanagement.googleapis.com/v1/enterprises/project-id/devices' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer access-token'
Los eventos para todas las estructuras y los dispositivos se publicarán después de esta llamada a la API.
Genera eventos
Los eventos se generan para todos los cambios en los campos de trait, algunos son automáticos, manual.
Por ejemplo, si la temperatura ambiente cerca de tu
Nest Thermostat cambia, un evento para el
La característicade temperatura
se enviarán automáticamente con un nuevo valor ambientTemperatureCelsius
.
Sigue uno de estos pasos para generar uno de forma manual:
- Cambiar físicamente el estado de tu dispositivo, por ejemplo, cambiar el modo de tu Nest Thermostat.
- Activa un evento (movimiento, persona o sonido) en una Google Nest Cam Indoor
- Ejecuta un comando del dispositivo con la API de SDM.
Ver los mensajes
Los mensajes de eventos se pueden ver en tu proyecto de Google Cloud, en la Sección Suscripciones a Pub/Sub:
Ir a Suscripciones de Google Cloud Pub/Sub
- Haz clic en el ID de suscripción que creaste anteriormente.
- En la pantalla Subscription details, deberías ver la actividad relacionada con el Gráfico de recuento de mensajes sin confirmar. Esto indica que los mensajes de eventos llegaron para tu suscripción. Si no ves ninguna actividad, espera un momento o generar algunos eventos más.
- Haz clic en VER MENSAJES para abrir el panel Mensajes.
- Haz clic en PULL para ver los mensajes. Deben corresponder a las acciones que usaste para generar eventos.
Los mensajes también se pueden ver en Cloud Shell con un comando pull
básico:
gcloud pubsub subscriptions pull subscription-id
Para obtener más información sobre los tipos de suscripción, así como los tipos de eventos enviados por la API de SDM y cómo usarlos, consulta Eventos.
Administrar mensajes
Para mantener una suscripción, los mensajes se deben confirmar y borrar definitivamente. limpiar y evitar la entrega de mensajes duplicados a otros suscriptores. Todo Los mensajes de suscripción se pueden borrar definitivamente de forma manual en las suscripciones de Pub/Sub. sección:
Ir a Suscripciones de Google Cloud Pub/Sub
- Haz clic en el ID de la suscripción.
- Existen varias formas de reconocerlos y borrarlos definitivamente:
- Haz clic en VER MENSAJES para abrir el panel Mensajes. Marca el parámetro Habilitar mensajes de confirmación. y haz clic en PULL para ver y confirmar todos los mensajes.
- Haz clic en PURGE. MENSAJES para borrar definitivamente todos los mensajes existentes mediante la confirmación sin de verlos. Haz clic en PURGE para confirmar.
Los mensajes también se pueden borrar definitivamente en Cloud Shell mediante la marca --auto-ack
con
Un comando pull
básico:
gcloud pubsub subscriptions pull subscription-id --auto-ack
Administrar las suscripciones
Las suscripciones se pueden configurar de varias maneras, como se describe en Cómo usar las propiedades de suscripción.
Si bien tú decides cómo administrar suscripciones y mensajes, para una aplicación de producción, te recomendamos que uses Cuentas de servicio para autenticación, en lugar de una cuenta de usuario como la que tienes hasta ahora en esta guía de inicio. Una aplicación o máquina virtual usa la cuenta de servicio, no una persona y tiene su propia clave de cuenta única.
Para obtener más información sobre la autenticación de cuentas de servicio con Device Access, consulta Eventos.