Saltar al contenido principal

¿Qué son las notificaciones silenciosas?

Las notificaciones silenciosas le permiten activar su aplicación y realizar tareas en segundo plano—como sincronizar o actualizar datos—sin mostrar un mensaje visible ni reproducir un sonido. En iOS, estas se llaman notificaciones en segundo plano, y en Android, se conocen como notificaciones de datos. Juntas, a menudo se denominan pushes silenciosos y se comportan de manera diferente a las notificaciones normales y visibles.

Limitaciones

  • Las aplicaciones no pueden recibir pushes silenciosos si:
    • iOS: La aplicación ha sido cerrada por el usuario como cuando se desliza desde el selector de aplicaciones. (Consulte soporte de Apple).
    • Android: La aplicación se ha forzado a cerrar a través de la configuración del dispositivo o automáticamente por algunos fabricantes cuando se desliza. (Más detalles aquí).
  • La entrega no está garantizada:
    • Tanto Apple como Google tratan las notificaciones silenciosas como mejor esfuerzo. iOS puede retrasar o eliminar la entrega en modo de bajo consumo, actualización de aplicaciones en segundo plano desactivada o si la aplicación fue cerrada por el usuario. Android puede limitar o agrupar la entrega según las reglas de ahorro de energía de Doze o OEM.
    • Debido a esto, las notificaciones silenciosas nunca deben usarse para actualizaciones críticas.
  • Solo usuarios suscritos: El SDK de OneSignal solo envía notificaciones de datos a suscripciones suscritas. Para llegar a usuarios no suscritos, siga esta solución alternativa.
  • Soporte limitado para SDKs multiplataforma:

Enviar notificaciones silenciosas desde OneSignal

Siga estos pasos para enviar una notificación silenciosa desde OneSignal:
1

Omitir contenido visible

Elimine cualquier texto o título visible del mensaje. Esto incluye:
  • API: contents, headings, subtitle en su solicitud de API Crear notificación.
  • Panel: Mensaje, Título, Subtítulo
2

Establecer content_available

  • API: Establezca content_available en true.
  • Panel: Marque Content available en “Send to Apple iOS”. Esto se aplica a todas las plataformas y simplemente le dice a nuestro sistema que no se está enviando ningún mensaje.
3

Agregar datos a la notificación

  • API: Use el parámetro data.
  • Panel: Use los campos Additional Data.

Ejemplo de payload de API

curl -X POST https://api.onesignal.com/notifications \
  -H "Authorization: Key YOUR_APP_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "app_id": "YOUR_APP_ID",
    "include_aliases": { "external_id": ["user-123"] },
    "target_channel": "push",
    "content_available": true,
    "data": {
      "action": "sync_data",
      "version": "2"
    }
  }'

Configuración específica de la plataforma

Configuración de notificaciones en segundo plano de iOS

Para manejar notificaciones en segundo plano, su aplicación iOS debe tener la capacidad Background Modes > Remote Notifications habilitada en Xcode. Esto generalmente se agrega si siguió nuestra configuración del SDK móvil. Para procesar la notificación, implemente el método AppDelegate application(_:didReceiveRemoteNotification:fetchCompletionHandler:). Documentación de Apple:
Si el usuario ha cerrado la aplicación (la deslizó del selector de aplicaciones), iOS no entregará la notificación.En tales casos, incluya un mensaje contents visible y procese los datos en UNNotificationServiceExtension.didReceive.

Configuración de notificaciones de datos de Android

Maneje notificaciones de datos en Android usando la Extensión de servicio de notificación. Esto le permite:
  • Procesar notificaciones siempre que la aplicación no haya sido cerrada forzosamente
  • Personalizar cómo se muestran o suprimen las notificaciones
Documentación de Android:
Si la aplicación ha sido forzada a detenerse (a través de la configuración del dispositivo o por alguna optimización de batería del OEM), Android no entregará la notificación. Consulte el comportamiento de fuerza de detención de Android.

Enviar notificaciones VoIP

Las notificaciones VoIP son compatibles pero requieren configuración adicional fuera de los SDKs estándar de OneSignal. OneSignal no registra tokens VoIP automáticamente.

Guía de configuración de notificaciones VoIP

Configure notificaciones push VoIP para llamadas en tiempo real en iOS.

Preguntas frecuentes

¿Se pueden usar notificaciones silenciosas para detectar desinstalaciones o cancelaciones de suscripción?

Técnicamente sí, pero no es confiable. Como se explica en la sección Limitaciones anterior, no se garantiza que se entreguen las notificaciones silenciosas. En su lugar:
  • Envíe notificaciones visibles (con contenido) a todos sus usuarios al menos una vez al mes.
  • Opcionalmente envíe notificaciones silenciosas como una verificación complementaria.
Para más detalles sobre cómo manejar cambios en el estado de suscripción, consulte nuestra guía de suscripciones.

¿Funcionan las entregas confirmadas con notificaciones silenciosas?

Las entregas confirmadas no funcionan con notificaciones silenciosas.

¿Puedo usar notificaciones silenciosas para medir cuántos usuarios son alcanzables?

No, no de manera confiable. Las notificaciones silenciosas no tienen entrega garantizada.
  1. La entrega no está garantizada — tanto Apple como Google tratan las notificaciones silenciosas como mejor esfuerzo y pueden retrasarlas o descartarlas. Por ejemplo, iOS las descartará si la aplicación está cerrada (fuerza de cierre) y Android e iOS las limitarán bajo reglas de ahorro de energía.
  2. La entrega no está confirmada — las entregas confirmadas no funcionan con notificaciones silenciosas, por lo que no hay forma de saber qué usuarios realmente recibieron el push.
Para medir los usuarios alcanzables, envíe una notificación visible y realice un seguimiento de las métricas de entrega en Analytics.

Extensiones de servicio

Gestione el procesamiento de notificaciones en código nativo en iOS y Android.

Suscripciones

Comprenda los tipos de suscripción y cómo se conectan a los usuarios.

API de creación de mensajes

Envíe notificaciones programáticamente, incluidos los pushes silenciosos.