Preguntas frecuentes
Acerca de la explicación del identificador único de usuario
- Durante la inicialización, se debe completar una cadena única para generar un UID único. Este UID es el código de identificación para las notificaciones push y no está relacionado con el dispositivo.
- Cuando un usuario utiliza el mismo
user_str, se reconocerá como el mismo usuario. Al suscribirse en distintos navegadores o dispositivos, la información de suscripción se reemplazará por la más reciente para el envío de mensajes. Por ejemplo, el Usuario A se suscribe con el mismouser_stren los navegadores a1, a2 y a3 sucesivamente. En teoría, solo el último navegador suscrito, a3, podrá recibir mensajes, lo que evita que el mismo usuario reciba múltiples mensajes y el envío excesivo. El backend siempre guarda únicamente la información de suscripción más reciente para el mismo UID. - Las suscripciones a mensajes se pueden cancelar, y el SDK proporciona una interfaz para cancelar la suscripción. Esta interfaz de cancelación solo anula la relación de vinculación entre el UID y la información de suscripción, y no modifica los permisos de notificaciones del navegador.
- En teoría,
user_strdebería corresponder de forma uno a uno con los usuarios reales. En algunas situaciones específicas, los usuarios pueden estar en modo visitante. Los desarrolladores deben generar explícitamente unuser_strúnico según su situación real. El SDK no realiza automáticamente un procesamiento predeterminado para evitar errores cuando los desarrolladores no gestionan correctamente la relación entreuser_stry los usuarios reales, lo que podría provocar que los datos estadísticos no coincidan con la situación esperada.Cuando los usuarios están en modo visitante, los desarrolladores pueden consultar la siguiente función para generar un
user_strúnico. Esta función utiliza el navegador del usuario como código de identificación único. Se debe tener en cuenta que este método hará que el mismo usuario genere un nuevouser_stral cambiar de navegador, dispositivo o al borrar la caché.
Función de ejemplo:function randomUid() { const keyStr = 'mtWebPushRandomUid'; let uid = window.localStorage.getItem(keyStr); if (!uid) { uid = new Date().getTime().toString(36) + Math.floor(Math.random() * 10000000).toString(36); window.localStorage.setItem(keyStr, uid); } return uid; } var user_str = randomUid();function randomUid() { const keyStr = 'mtWebPushRandomUid'; let uid = window.localStorage.getItem(keyStr); if (!uid) { uid = new Date().getTime().toString(36) + Math.floor(Math.random() * 10000000).toString(36); window.localStorage.setItem(keyStr, uid); } return uid; } var user_str = randomUid();Este bloque de código se muestra en una ventana flotante
¿Qué plataformas admiten WebPush?
Compatibilidad del navegador por sistema operativo
| Navegador | PC Windows | macOS | Android | iOS (iPhone, iPad) |
|---|---|---|---|---|
| Chrome | Sí | Sí | Sí | No |
| Firefox | Sí | Sí | Sí | No |
| Safari | No | Sí | No | Sí |
| Microsoft Edge | Sí | Sí | No | No |
| Opera | Sí | Sí | Sí | No |
Nota 1: Microsoft Edge (actualizado en 2019), Opera, Samsung Internet, Yandex y UC Browser son navegadores basados en Chromium y se identifican como Chrome en EngageLab.
Nota 2: Internet Explorer ya no recibe actualizaciones de funciones. Microsoft ha trasladado el desarrollo del navegador a la plataforma Edge.
Nota 3: El modo incógnito, el modo de navegación privada y el modo invitado del navegador no admiten notificaciones push web.
Compatibilidad por versión del navegador
| Navegador | Windows | MacOS | Android |
|---|---|---|---|
| Chrome | Chrome 42+ | Chrome 42+ | Chrome 105+ |
| Firefox | Firefox v44+ | Firefox v44+ | Firefox v104+ |
| Apple Safari | / | Safari V11.1+ | / |
| Opera | Opera v29+ | Opera v29+ | Opera mobile v64+ |
| Microsoft Edge | Edge v17+ | Edge v17+ | / |
Preguntas relacionadas con las notificaciones push web del navegador Safari
Las notificaciones push web en el navegador Safari admiten macOS (V11.1+) y también iOS/iPadOS 16.4+.
¿Qué funciones admiten las notificaciones push de Safari?
| Función | macOS (15-) | macOS (16+) | iOS/iPadOS 16.4+ |
|---|---|---|---|
| Imágenes | No | No | No |
| Botones de acción | No | No | No |
| URL de apertura | Sí | Sí | Sí |
| Icono de sitio personalizado | Sí | No | Sí |
¿Cómo reciben los usuarios en iOS y iPadOS las notificaciones push web de Safari?
1. ¿Cómo pueden los desarrolladores configurarlo para permitir que los usuarios reciban notificaciones web en iOS/iPadOS 16.4+?
En iOS/iPadOS 16.4+, las notificaciones push web están disponibles. Sin embargo, para que las notificaciones funcionen correctamente, un sitio web debe tener el archivo manifest adecuado y configurarse con los atributos correctos. Añadir el código correspondiente al html de la página de integración:
Incluir el archivo manifest:
{
"$schema": "https://json.schemastore.org/web-manifest-combined.json",
"display": "standalone",
"start_url": "/webpush/index.html",
"name": "Engagelab WebPush Example",
"short_name": "Engagelab",
"icons": [
{
"src": "/icon-large-cb438cac.png",
"type": "image/png",
"sizes": "1024x1024"
}
]
}
2. Para que los usuarios puedan suscribirse y recibir notificaciones push web de Safari móvil, deben añadir la app web a la pantalla de inicio
Para enviar notificaciones push web de Safari móvil (aplicable a iOS y iPadOS 16.4+), los destinatarios deben realizar las siguientes acciones:
- Visitar su sitio web mediante el navegador Safari en un dispositivo Apple móvil con 16.4+.
- Tocar el botón de compartir en el navegador Safari del dispositivo móvil.
- Tocar la opción “Add to Home Screen”.
- Guardar la aplicación en el dispositivo.
- Abrir la aplicación desde la pantalla de inicio.
- Suscribirse a las notificaciones (deben tocar el botón de suscripción antes de que aparezca el aviso nativo de permisos). Estos pasos son necesarios para recibir notificaciones push web móviles. Como esta experiencia de interacción es relativamente compleja para los usuarios finales, se debe ayudar a los usuarios finales a comprender los beneficios de suscribirse a las notificaciones.
3. Añadir una notificación tipo banner en su sitio web para guiar a los usuarios a "Add to Home Screen"
Se puede añadir un banner a su sitio web para informar a los usuarios finales del valor de las notificaciones push web móviles y cómo suscribirse.
Se recomienda añadir un banner en su sitio web que se muestre en dispositivos Apple móviles, guiando a los visitantes a tocar el botón de compartir y la opción "Add to Home Screen".
También existe un proyecto popular de código abierto que puede ayudarle a proporcionar estas indicaciones a los usuarios:
Enlace de GitHub de ejemplo de banner inferior: https://github.com/rajatsehgal/add-to-home-screen
Si el navegador está cerrado, ¿puede el usuario recibir la notificación?
- Al utilizar el canal de EngageLab, se debe mantener el sitio web abierto para recibir notificaciones.
- Al utilizar el canal del sistema, se pueden recibir notificaciones aunque el navegador esté cerrado. El comportamiento varía según la plataforma. Para más información, consulte la siguiente tabla:
| Navegador | Windows | MacOS |
|---|---|---|
| Chrome | Sí, el proceso del navegador debe estar en segundo plano | Sí, el proceso del navegador debe estar en segundo plano |
| Firefox | Sí, el proceso del navegador debe estar en segundo plano | Sí, el proceso del navegador debe estar en segundo plano |
| Safari | / | Sí |
| Opera | Sí, el proceso del navegador debe estar en segundo plano | Sí, el proceso del navegador debe estar en segundo plano |
| Microsoft Edge | Sí, el proceso del navegador debe estar en segundo plano | Sí, el proceso del navegador debe estar en segundo plano |
En Windows, aunque todas las ventanas estén cerradas, si el navegador sigue ejecutándose en segundo plano, se pueden recibir notificaciones del sistema. Si el proceso del navegador se ha cerrado, no se recibirán notificaciones del sistema.
En Mac OS X, aunque todas las ventanas estén cerradas, la mayoría de los procesos del navegador seguirán ejecutándose en segundo plano; es decir, podrán recibir notificaciones del sistema. Si se fuerza la salida del proceso del navegador, no se recibirán notificaciones del sistema. Safari puede recibir notificaciones sin estar en ejecución, porque se envían directamente al sistema operativo. Los usuarios deben registrar primero las notificaciones de Safari y, a continuación, podrán recibir notificaciones incluso si Safari está completamente deshabilitado.
Preguntas relacionadas con el aviso de autorización de notificaciones
¿Cuándo se mostrará de nuevo el aviso después de que un usuario descarte el aviso de web push?
Si un usuario hace clic en "Block" (Chrome), "Don't Allow" (Safari) o "Never Allow" (Firefox) en el aviso nativo de permisos, el sitio web no podrá volver a mostrar avisos a ese usuario, a menos que el usuario realice un proceso de varios pasos en la configuración del navegador para suscribirse o restablecer los permisos. Por este motivo, se recomienda utilizar los avisos de EngageLab (ir a Ajustes).
Aviso nativo de permisos
Una suscripción a web push requiere un aviso nativo de permisos del navegador, y dicho aviso nativo no es personalizable. Utiliza el idioma configurado en los ajustes del navegador del usuario. Solo los sitios web HTTPS pueden mostrar avisos nativos del navegador.
Chrome: Tiene 3 oportunidades para lograr que el usuario se suscriba. Después de que el usuario haga clic en "X" en el aviso nativo por 3.ª vez, no se le mostrarán avisos durante una semana. Para más información sobre esta función de Chrome, consulte aquí.
Firefox: A partir de Firefox 70, tras hacer clic en el botón de "cerrar", el usuario debe hacer clic en el pequeño icono de notificación del navegador para volver a recibir avisos. Además, en Firefox 72+, se ha bloqueado la visualización del aviso nativo del navegador; para más detalles, consulte aquí.
Safari: Similar a Firefox, se añadió una UI más discreta para usuarios que suelen rechazar permisos, y también se proporcionan avisos automáticos para sitios en los que se denegó el push, Safari 12.1+
Aviso suave de EngageLab
Dado que el aviso nativo emergente solo ofrece una oportunidad, si el usuario lo rechaza, el sitio web ya no podrá obtener autorización del usuario; por lo tanto, EngageLab recomienda utilizar el método de 'aviso suave' para obtener la autorización del usuario:
Si un usuario hace clic en "Allow" o "Cancel" en el aviso de EngageLab (ir a Ajustes Guía para aplicar) y aun así no se suscribe mediante el aviso nativo, el aviso de EngageLab puede volver a mostrarse.
- Cuando un usuario hace clic en "Allow" en el aviso de EngageLab, se invocará el aviso nativo; pero si el usuario hace clic en "Cancel" en el aviso nativo en ese momento, el aviso de EngageLab seguirá mostrándose la próxima vez que el usuario entre en el sitio web, solicitando si permite la autorización de notificaciones del sitio web.
- Cuando un usuario hace clic en "Allow" en el aviso de EngageLab, se invocará el aviso nativo, y si el usuario hace clic en "Allow" en el aviso nativo en ese momento, el usuario habrá autorizado al sitio web los permisos de notificaciones web; si el usuario hace clic en "Deny" en el aviso nativo en ese momento, el sitio web no podrá volver a obtener autorización del usuario.
- Cuando un usuario hace clic en "Cancel" en el aviso de EngageLab, se puede considerar que el usuario no tiene intención de recibir notificaciones del sitio web en ese momento; si se le pregunta si acepta mensajes de notificación del sitio web, es probable que los rechace, por lo que no se invocará el aviso nativo en ese momento, y la próxima vez que el usuario visite el sitio, el aviso de EngageLab podrá volver a consultar su disposición a recibir notificaciones.
Métodos de solución de problemas cuando no se reciben notificaciones
1. Comprobar el permiso en la barra de notificaciones de la página web.

2. Comprobar si el permiso de notificaciones de la aplicación del navegador está habilitado.
Ajustes de notificaciones de Windows:
- Desactivar el asistente de concentración. Para más información, consulte la documentación oficial de Microsoft.
- Comprobar Settings> Notifications and actions> activar la recepción de notificaciones de aplicaciones y otros remitentes. Asegurarse de que su sitio y el navegador también están habilitados. Para más información, consulte la documentación oficial de Microsoft.
Ajustes de notificaciones de macOS:
- En Preferencias del Sistema > Notificaciones (System Preferences > Notifications) > Chrome o el navegador seleccionado, asegurarse de que Permitir notificaciones esté activado.
- En Preferencias del Sistema > Notificaciones > Enfoque > No molestar y reposo, asegurarse de que este modo no esté activado o de que se esté dentro del tiempo de notificación permitido.
- macOS también dispone de un ajuste temporal de notificación "No molestar" en el menú de la esquina superior derecha; desplazarse hacia arriba.
3. El fabricante del navegador es inestable, por lo que se recomienda priorizar el cambio al canal de EngageLab.

{
"from":"web_push",
"to":{
"registration_id":[
"xxx"
]
},
"body":{
"platform":"web",
"notification":{
"web":{
"title":"web_push",
"alert":"Hi,MTPush !",
"url":"http://www.google.com",
"extras":{
"web-key1":"web-value1"
}
}
},
"options":{
"time_to_live":30,
"third_party_channel":{
"w3push":{
"distribution":"mtpush"
}
}
},
"request_id":"12345678",
"custom_args":"business info"
}
}
¿Cómo solucionar problemas cuando Safari no muestra notificaciones?
Paso 1: Comprobar los permisos del navegador Safari; verificar si el interruptor de permitir está habilitado. La situación normal se muestra en la imagen:

Paso 2: Hacer clic en Check push service status and browser Notification permission; la situación normal se muestra en la imagen:
Paso 3: Hacer clic en Safari > Preferencias (Preferences), luego hacer clic en Sitios web (Websites) > Notificaciones (Notifications) para comprobar si el sitio web del Centro de notificaciones está permitido; la situación normal se muestra en la imagen.

Nota:
- Al hacer clic en stop push, no se recibirán mensajes push de Aurora, y es necesario actualizar la página.
- Un nombre de dominio se configura con varias páginas html. No eliminar los permisos del sitio web del Centro de notificaciones. Tras la eliminación, las páginas html no recibirán notificaciones. (Se debe encontrar la página principal y obtener de nuevo el permiso de notificaciones del sitio web)
[...]
Si encuentra algún problema no cubierto en este documento durante el uso, no dude en contactar con el servicio de atención al cliente y le proporcionaremos soporte y soluciones profesionales.
