Использую дополнение к django -
webpush-django, вызываю один раз следующую функцию:
def send_push(data):
try:
user_id = data['id']
user = get_object_or_404(User, pk=user_id)
payload = {
'head': data['head'],
'body': data['body'],
'url': data['url'],
}
send_user_notification(user=user, payload=payload, ttl=1800)
return JsonResponse(status=200, data={'message': 'Web push successful'})
except TypeError:
return JsonResponse(status=500, data={'message': 'An error occurred'})
А приходит целых 3 push-уведомления, если нужен sw.js, то вот:
self.addEventListener('push', function (event) {
const eventInfo = event.data.text();
const data = JSON.parse(eventInfo);
const head = data.head || 'New Notification ';
const body = data.body || 'This is default content. Your notification didn\'t have one ';
const url = data.url || '/';
event.waitUntil(
self.registration.showNotification(head, {
body: body,
icon: '/static/img/tf.jpg',
url: url,
})
);
});
В чем может быть причина? (на других устройствах не могу пока тестировать, т.к. нет пока ssl сертефиката)