Comments (2)
@arogachev So the thing is, user can subscribe from multiple browser.
We do not show the message if the user already subscribed from the the same browser.
Does it make sense?
from django-webpush.
I found a solution for that.
You need to inject a array of endpoint on your view
pushs = PushInformation.objects.filter(user=request.user).all()
endpoints=[]
for push in pushs:
endpoint = push.subscription.endpoint
endpoints.append(endpoint)
end= json.dumps({"point":endpoints})
if pushs:
pushactif=1
else:
pushactif=0
return render(request, 'mytemplate.html', { 'pushactif':pushactif, 'end':end})
After that you can write a little code in js to check if the end point of our registration match any of endpoint found on server.
$(function () {
var active = {{ pushactif }};
var end = `{{ end|safe }}`;
var endpoints = JSON.parse(end);
var serviceWorker = document.querySelector('meta[name="service-worker-js"]').content;
navigator.serviceWorker.register(serviceWorker)
.then(
function(reg) {
registration = reg;
var navpoint;
registration.pushManager.getSubscription().then(function (nav) {
navpoint= nav.endpoint;
let ok =0;
if (active === 1){
for (let i=0; i<endpoints.point.length; i++){
if (endpoints.point[i]===navpoint){
ok=1;
}
}
}
if (ok===1){
subBtn.textContent = 'Unsubscribe to Push Messaging';
subBtn.disabled = false;
isPushEnabled = true;
}
})
}
);`
from django-webpush.
Related Issues (20)
- Duplicate notifications
- django 4.0 compatibility HOT 1
- Problems to load 'webpush_header' HOT 5
- images in notification
- #from django.conf.urls import url HOT 1
- Open webpush url in a popup window
- Migrations problems with Django 3 HOT 5
- New release after 0.3.4 HOT 1
- Grouping of multiple notification not working
- iOS 16.4 Support HOT 4
- Allow passing timeout to pywebpush.send
- Support for IOS 16.4 web push notifications? HOT 4
- IOS 16.4 Support Approach(Solved) HOT 4
- inquiry about notification limits per minute HOT 1
- Subscribe button not working HOT 2
- Errors When Sending Notifications HOT 1
- url not defined HOT 3
- Custom callbacks on subscription
- Cannot read properties of undefined (reding 'pushManager') HOT 4
- Kindly add method to add a group and meta for class subscription and push notifications
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from django-webpush.