Действия по уведомлению широко не поддерживаются на момент написания этой статьи.
Для браузеров, которые его поддерживают, вы можете использовать его следующим образом:
self.registration.showNotification('New message from Alice', {
actions: [
{action: 'like', title: 'Like'},
{action: 'reply', title: 'Reply'}
]
});
Затем, чтобы получить то, на что пользователь нажал, что-токак это:
self.addEventListener('notificationclick', function(event) {
var messageId = event.notification.data;
event.notification.close();
if (event.action === 'like') {
silentlyLikeItem();
}
else if (event.action === 'reply') {
clients.openWindow("/messages?reply=" + messageId);
}
else {
clients.openWindow("/messages?reply=" + messageId);
}
}, false);
Вы можете прочитать подробности на https://developers.google.com/web/updates/2016/01/notification-actions
Чтобы увидеть это в действии, вы можете проверить https://tests.peter.sh/notification-generator/#actions=3