Descripción general
La integración OneSignal + Google Pub/Sub permite la sincronización en tiempo real de eventos personalizados desde tus topics de Pub/Sub a OneSignal para activar campañas de mensajería automatizadas y Journeys basados en el comportamiento del usuario. Pub/Sub es el servicio de mensajería escalable de Google que permite a las aplicaciones enviar y recibir mensajes entre componentes independientes. OneSignal actúa como suscriptor de tus topics de Pub/Sub, permitiéndote sincronizar mensajes de eventos desde Pub/Sub para activar experiencias de usuario personalizadas.Requisitos
- Access to Event Streams for outbound message events (Plan limitations and overages apply)
- Access to Custom Events for inbound event syncing (Plan limitations and overages apply)
- Updated Account Plan (not available on free apps)
Google Pub/Sub
- Proyecto de Google Cloud con Pub/Sub habilitado
- Topics de Pub/Sub que contengan mensajes de eventos
- Permisos IAM para otorgar acceso a cuenta de servicio
- Mensajes con formato JSON en tus topics
Configuración
1
Crear conexión Pub/Sub
In OneSignal, go to Data > Integrations and click Add Integration.
- Selecciona Google Pub/Sub de la lista
- Ingresa el ID del Proyecto GCP donde se encuentran tus topics de Pub/Sub
- Elige el método de autenticación:
- Auto-generated Service Account (recomendado): OneSignal crea y gestiona la cuenta de servicio
- Existing Service Account: Proporciona tu propio archivo JSON de clave de cuenta de servicio
- Haz clic en Connect
2
Otorgar permisos a la cuenta de servicio
OneSignal creará una nueva cuenta de servicio y te proporcionará la dirección de email de la cuenta de servicio.Otorga el rol OneSignal usa este rol para:
roles/pubsub.editor a esta cuenta de servicio en tu proyecto GCP:- Crear suscripciones a tus topics de eventos
- Consumir mensajes de eventos desde topics
- Crear topics de error (Dead Letter Queue) para procesamiento fallido
3
Probar conexión
Una vez que hayas otorgado los permisos necesarios, haz clic en Save en OneSignal para verificar la conexión.OneSignal validará que puede acceder a tus topics de Pub/Sub y está listo para procesar mensajes de eventos.
Esquema de datos de eventos
Antes de poder usar un topic de Pub/Sub para eventos personalizados, debes definir el esquema de los mensajes de eventos.1
Navegar a la definición del esquema de eventos
En OneSignal, ve a Data > Integrations y selecciona tu conexión de Pub/Sub.OneSignal extrae automáticamente la lista de topics desde tu proyecto. Haz clic en Refresh topics para actualizar manualmente la lista.
2
Definir esquema de mensaje de evento
- Haz clic en el nombre del topic que contiene tus datos de eventos
- Selecciona JSON como el formato de mensaje (único formato soportado)
- Haz clic en Import sample message y proporciona un mensaje de evento de muestra
- Revisa el esquema detectado para asegurar el mapeo correcto de campos
- Haz clic en Save Dataset
Formato de mensaje de evento
Tus mensajes de Pub/Sub deben seguir esta estructura JSON para eventos personalizados de OneSignal:Event data mapping
Map your to OneSignal’s custom events format:| OneSignal Field | Description | Required | |
|---|---|---|---|
name | event_name | Event identifier | Yes |
external_id | user_id | User identifier | Yes |
timestamp | event_timestamp | When event occurred | No |
properties | event_data | No |
Procesamiento de eventos en tiempo real
A diferencia de las integraciones por lotes, Pub/Sub permite el procesamiento de eventos casi en tiempo real:- Baja latencia: Los eventos se procesan en segundos después de ser publicados en topics
- Suscripciones automáticas: OneSignal crea suscripciones dedicadas para cada topic
- Manejo de errores: Los eventos fallidos se envían a topics de Dead Letter Queue para investigación
- Procesamiento escalable: Maneja flujos de eventos de alto volumen automáticamente
Configuración avanzada
Dead Letter Queue
OneSignal crea automáticamente topics de error para eventos que fallan en el procesamiento:- Creación automática: Los topics de error se crean por suscripción
- Almacenamiento de eventos fallidos: Los eventos que no pueden procesarse se almacenan para depuración
- Revisión manual: Accede a eventos fallidos a través de Google Cloud Console para solución de problemas
Reconocimiento de mensajes
OneSignal maneja el reconocimiento de mensajes de Pub/Sub automáticamente:- Procesamiento exitoso: Los mensajes se reconocen después de la creación exitosa del evento
- Procesamiento fallido: Los mensajes se reconocen negativamente y se envían a Dead Letter Queue
- Lógica de reintento: Manejo de reintentos integrado para fallas transitorias
Limitaciones
- Solo se soporta el formato de mensaje JSON
- Las muestras de mensajes se almacenan como parte de las definiciones de dataset (evitar PII)
- Requiere permisos
roles/pubsub.editora nivel de proyecto - El tamaño máximo de mensaje sigue los límites de Google Pub/Sub (10MB)