Open gibigate opened 5 years ago
https://developers.google.com/web/fundamentals/push-notifications/display-a-notification https://web-push-book.gauntface.com/demos/notification-examples/
смотрите доку и примеры, параметры добавлять нужно в эту функцию
self.registration.showNotification в виде json объекта 2 аргументом.
self.addEventListener('push', function(event) {
console.log('Получено push-сообщение', event);
var data = event.data.json(); // json данные, которые отправили в из php скрипта ( они могут быть любыми, главное json ).
var title = 'Ура, работает!';
var body = 'Было получено сообщение от сайта.';
var icon = '/icon-192x192.png';
var tag = 'simple-push-demo-notification-tag';
event.waitUntil(
self.registration.showNotification(title, {
body: body,
icon: icon,
tag: tag
})
);
});
У меня подключен fcm с дефолтными jsками, через пхп я отправляю такое:
$opts['postDataJson']['notification'] = array(
'title' => $push['title'],
'body' => $push['description'],
'icon' => $config['firebase_files'].$push['icon'],
'badge' => $config['firebase_files'].$push['badge'],
'image' => $config['firebase_files'].$push['image'],
'vibrate' => $push['vibrate'],
'requireInteraction' => $push['interaction']>0 ? 'true' : 'false',
'click_action' => 'URL/push.php?action=redirect&id='.$push['id'].'&subid='.$push['last_id'],
);
Иконка показывается, а badge и image не работает, мне нужно отредактировать скрипт firebase-messaging-sw.js?
Содержимое:
// firebase-messaging-sw.js
importScripts('https://www.gstatic.com/firebasejs/3.6.8/firebase-app.js');
importScripts('https://www.gstatic.com/firebasejs/3.6.8/firebase-messaging.js');
firebase.initializeApp({
messagingSenderId: '1111111111111'
});
const messaging = firebase.messaging();
В частности хотелось бы узнать, как отправлять badge, image (не icon) и action кнопки для WEB Push