Importante
Servicios de terceros y notificaciones push obsoletos
Los servicios de terceros y las notificaciones push en App Services han quedado obsoletos en favor de la creación de puntos finales HTTP que usan dependencias externas en funciones.
Los webhooks se han renombrado como puntos finales HTTPS sin cambios en su comportamiento. Debe migrar los webhooks existentes.
Los servicios existentes continuarán funcionando hasta el de septiembre 30 2025de.
Dado que los servicios de terceros y las notificaciones push ya no se utilizan, se han eliminado de forma predeterminada de la interfaz de usuario de App Services. Si necesita administrar un servicio de terceros o una notificación push existente, puede volver a agregar las configuraciones a la interfaz de usuario siguiendo estos pasos:
En la navegación izquierda, debajo del Manage sección, haga clic en App Settings.
Habilite el interruptor junto a Temporarily Re-Enable 3rd Party Services y luego guarde los cambios.
Overview
Atlas App Services permite la integración de aplicaciones móviles (Android e iOS) con el servicio Firebase Cloud Messaging (FCM) para proporcionar notificaciones push. Puedes configurar y enviar mensajes de notificación desde la consola de App Services, mientras los clientes se registran en Firebase Cloud
Messaging (FCM) para mensajes enviados a temas específicos.
Interfaz de gestión
La pantalla Push Notifications en la interfaz de usuario de Servicios de aplicaciones le permite escribir borradores de notificaciones, enviar notificaciones a los usuarios y definir reglas de notificación.
Hay cuatro pestañas en la pantalla Push Notifications:
Nombre de la pestaña | Descripción |
|---|---|
Draft | En la pestaña Borrador, puedes ver una lista de los borradores de mensajes. Para los borradores, puedes:
|
Sent | La pestaña "Enviados" muestra los mensajes que App Services ya ha enviado a los clientes registrados. Desde aquí, puede ver una lista de los mensajes enviados. Para los mensajes enviados, puede:
|
Config | En la pestaña Configuración, proporciona la Credenciales deFCM (ID del remitente y clave API heredada). |
Rules | Opcionalmente, puede especificar reglas de notificación push para restringir los tipos de notificaciones push que envía su aplicación. |
Enviar una notificación push
Puede enviar nuevas notificaciones push desde la página Push Notifications. Haga clic en el botón Send New Notification para abrir el cuadro de diálogo Send New Notification. En este cuadro de diálogo, proporcione el mensaje de notificación, la etiqueta y la audiencia del tema correspondiente.

Configurar clientes para recibir notificaciones push
El proceso general de integración de Notificaciones Push en una aplicación Android es el siguiente:
Agregue una dependencia para FCM.
Crea una instancia de Push.
Utilice los métodos push.registerDevice() o push.registerDeviceAsync() para registrar el cliente para recibir notificaciones push.
Utilice subscribeToTopic() de FirebaseMessaging para suscribirse a temas.
Cree una clase que extienda el servicio abstracto FirebaseMessagingService e implemente el método onMessageReceived(). Esta clase gestiona la comunicación con FCM.
Actualice el archivo
AndroidManifest.xmlde su proyecto Android para registrar su clase derivada deFirebaseMessagingServicey un receptor para su aplicación.
Para ver la información más reciente y los pasos detallados sobre la integración de FCM con clientes Android, consulta la guía oficial Configurar una aplicación cliente de Firebase Cloud Messaging en Android.
Para usar FCM con App Services en una aplicación iOS, siga estos pasos generales:
Cree un certificado de servicio de notificaciones push de Apple (APN) válido a través del Centro para miembros desarrolladores de Apple.
Copie el archivo GoogleService-Info.plist a su proyecto XCode.
Configura FCM y añade tu app de iOS. Al registrarla, FCM te devolverá un token de registro.
Para ver la información más reciente y los pasos detallados sobre la integración de FCM con clientes iOS, consulta la guía oficial Configurar una aplicación cliente de Firebase Cloud Messaging en iOS.
Plantillas de reglas
Las notificaciones deben tener un título específico
{ "%%args.notification.title": "Test Notification Please Ignore" }
Las notificaciones deben ser para un tema específico
{ "%%args.to": "%%values.validTopics" }
Las notificaciones solo se pueden enviar a un conjunto limitado de ID de usuario
{ "%%true": { "%function": { "name": "allUserIdsAreValid", "arguments": [ "%%args.userIds" ] } } }
Nota
Esta plantilla llama a una función de ejemplo llamada allUserIdsAreValid que hace lo siguiente:
Acepta la lista de ID de usuario proporcionada en el argumento
userIdsConsulta a MongoDB un documento de usuario que coincida con el ID del usuario actual
Compara el número de teléfono proporcionado con el número que aparece en el documento del usuario
Devuelve el resultado booleano de la comparación.
exports = function(toPhone) { const mdb = context.services.get('mongodb-atlas'); const users = mdb.db('demo').collection('users'); const user = users.findOne({ _id: context.user.id }); return user.phoneNumber === toPhone; }
Reglas de notificaciones push
Para especificar reglas para las notificaciones push, haga clic en la pestaña Rules de la página Push Notifications.
Nota
A diferencia de otros servicios de App Services, las reglas para las notificaciones push son opcionales. De forma predeterminada, se permiten todas las notificaciones push. Sin embargo, una vez que se especifica una regla, se aplican las restricciones impuestas por ella.
Las reglas de notificaciones push permiten los siguientes argumentos. Puedes acceder a ellos con la expansión "%%args":
Campo | Tipo | Descripción |
|---|---|---|
| Arreglo de cadenas. | Los identificadores de usuario de los destinatarios del mensaje. |
| String | El destinatario del mensaje. El valor puede ser el token de registro de un dispositivo, la clave de notificación de un grupo de dispositivos o un tema individual (con el prefijo |
| Arreglo de cadenas. | La lista de tokens de registro para los dispositivos que reciben el mensaje de multidifusión. |
| string | Prioridad de la notificación. El valor es |
| string | La clave de contracción asociada a los mensajes contraíbles. Corresponde a la |
| booleano | Una bandera que determina si se reactivan las aplicaciones cliente inactivas al recibir el mensaje. Corresponde a la |
| booleano | Una bandera que determina si el contenido de la notificación se puede modificar antes de mostrarse al usuario. Corresponde a la |
| Int | Tiempo máximo (en milisegundos) para retener el mensaje si el dispositivo está desconectado. El rango de valores válidos es de 0 a 2419200. Corresponde a la |
| Documento JSON | Carga útil para mensaje de datos. El documento |
| Documento JSON | Carga útil para notificación. |
Campos del documento de notificación
La siguiente tabla muestra los campos del documento notification que están disponibles como campo permitido para las reglas de notificaciones push. Para acceder a uno de estos campos en una regla, utilice "%%args.notification.<field>".
Campo | Tipo | Descripción |
|---|---|---|
| string | El título de la notificación. Corresponde a la |
| string | El cuerpo de la notificación. Corresponde a la |
| string | El sonido que se reproduce al recibir la notificación. Corresponde a la |
| string | La acción que se realiza cuando un usuario hace clic en la notificación. Corresponde a la |
| string | Clave para la localización de la cadena del cuerpo. Corresponde a la |
| string | Valores de cadena que reemplazan los especificadores de formato para la localización en la cadena de cuerpo. Corresponde a la |
| string | Clave para la localización de la cadena de título. Corresponde a la |
| string | Valores de cadena que reemplazan los especificadores de formato para la localización en la cadena de título. Corresponde a la |
| string | Solo para Android. El icono de notificación. Corresponde a la |
| string | Solo para Android. Indica el color del icono en formato #rrggbb. Corresponde a la |
| string | Solo para Android. Si se especifica, cada notificación no genera una nueva entrada, sino que reemplaza una entrada existente con la etiqueta especificada. Si no se configura, cada notificación genera una nueva entrada. Corresponde a la |
| string | Solo para iOS. La insignia en el icono de inicio de la aplicación gclient. Corresponde a la |