En las plataformas compatibles, mostrar una notificación del sistema generalmente implica dos cosas. Primero, el usuario debe otorgar el permiso de origen actual para mostrar las notificaciones del sistema, lo que generalmente se hace cuando se inicializa la aplicación o el sitio, mediante el método Notification.requestPermission()
. Esto debe hacerse en respuesta a un gesto del usuario, como hacer clic en un botón, por ejemplo:
btn.addEventListener("click", () => {
let promise = Notification.requestPermission();
// esperar por el permiso
});
Esta no es solo la mejor práctica: no debe enviar spam a los usuarios con notificaciones que no aceptaron, sino que, en el futuro, los navegadores rechazarán explÃcitamente las notificaciones que no se activen en respuesta a un gesto del usuario. Firefox ya está haciendo esto desde la versión 72, por ejemplo.
Esto generará un cuadro de diálogo de solicitud, a lo largo de las siguientes lÃneas:
Desde aquà el usuario puede optar por permitir las notificaciones de este origen, o bloquearlas. Una vez que se ha hecho una elección, la configuración generalmente persistirá durante la sesión actual.
Nota: A partir de Firefox 44 se combinaron los permisos de Notificaciones y Push. Si se otorga permiso para las notificaciones, también se habilitará el envÃo.
A continuación, se crea una nueva notificación usando el constructor Notification()
. A esto se le debe pasar un argumento de tÃtulo y, opcionalmente, se le puede pasar un objeto de opciones para especificar opciones, como la dirección del texto, el cuerpo del texto, el icono para mostrar, el sonido de notificación para reproducir y más.
Además, la especificación de la API de notificaciones especifica una serie de adiciones a la API ServiceWorker, para permitir que los service workers activen las notificaciones.
Nota: Para obtener más información sobre el uso de notificaciones en su propia aplicación, lea Uso de la API de notificaciones.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4