Olá, preciso de umas orientações para desenvolver umas regras para push notification.
Com o código abaixo conseguir que fosse apresentado no momento de uma confirmação, ou ao carregar uma página. Tudo bem no agora.
if ('Notification' in window) {
pushSubscription();
function pushSubscription() {
console.log(pushSubscription.subscriptionId);
console.log(pushSubscription.endpoint);
}
if (Notification.permission === 'granted') {
doNotify();
} else {
Notification.requestPermission().then(function (result) {
console.log(result); //granted || denied
if (Notification.permission == 'granted') {
doNotify();
}
}).catch((err) => {
console.log(err);
});
}
}
function doNotify() {
let title = "Cabeçalho";
let t = Date.now() + 120000;
let options = {
body: 'Corpo da notificação!',
data: { prop1: Notification.permission, prop2: "Sara" },
lang: 'pt-BR',
//icon: './Images/icon.png',
timestamp: t,
vibrate: [100, 200, 100],
}
let n = new Notification(title, options);
n.onclick = function () {
window.open("http://crmsense.com.br/");
};
n.addEventListener('show', function (ev) {
console.log('SHOW', ev.currentTarget.data);
});
n.addEventListener('close', function (ev) {
console.log('CLOSE', ev.currentTarget.body);
});
setTimeout(n.close.bind(n), 120000);
}
Eu estou com dificuldades para fazer com que este siga regras para ser apresentado, tais como apresentar a um grupo especifico. Estava pensando em algo como notificações que se diferenciam por grupos, exemplo:
-> HelpDesk (fulano 1, fulano 2 e fulano 3), estes receberiam (apenas eles) notificações quando chamados fossem abertos. Por ai vai...
Alguém consegue me dá uma luz?
Atenciosamente, Sara Tenorio.