Push v1
Wenn /dash aufgerufen wird, wird in der Konsole ein MSG TOKEN ausgegeben, dieser muss kopiert werden. Wenn localhost:7000/push/<MSGTOKEN> aufgerufen wird, bekommt der user dem der MSG TOKEN gehört eine push notification, sollange er den Browser offen hat
This commit is contained in:
		
							
								
								
									
										25
									
								
								express-server/public/firebase-messaging-sw.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								express-server/public/firebase-messaging-sw.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,25 @@
 | 
			
		||||
// Give the service worker access to Firebase Messaging.
 | 
			
		||||
// Note that you can only use Firebase Messaging here, other Firebase libraries
 | 
			
		||||
// are not available in the service worker.
 | 
			
		||||
importScripts('https://www.gstatic.com/firebasejs/4.8.1/firebase-app.js');
 | 
			
		||||
importScripts('https://www.gstatic.com/firebasejs/4.8.1/firebase-messaging.js');
 | 
			
		||||
 | 
			
		||||
// Initialize the Firebase app in the service worker by passing in the
 | 
			
		||||
// messagingSenderId.
 | 
			
		||||
firebase.initializeApp({
 | 
			
		||||
  'messagingSenderId': 'YOUR-SENDER-ID'
 | 
			
		||||
});
 | 
			
		||||
 | 
			
		||||
// Retrieve an instance of Firebase Messaging so that it can handle background
 | 
			
		||||
// messages.
 | 
			
		||||
const messaging = firebase.messaging();
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
messaging.setBackgroundMessageHandler(payload => {
 | 
			
		||||
  const title = payload.data.title
 | 
			
		||||
  const options = {
 | 
			
		||||
    body: payload.data.text
 | 
			
		||||
  }
 | 
			
		||||
  return self.registration.showNotification(title, options)
 | 
			
		||||
})
 | 
			
		||||
@@ -6,11 +6,13 @@ var config = {
 | 
			
		||||
    projectId: "test-667ca",
 | 
			
		||||
    storageBucket: "test-667ca.appspot.com",
 | 
			
		||||
    messagingSenderId: "221332577314"
 | 
			
		||||
};
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
firebase.initializeApp(config);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
$(document).ready(function() {
 | 
			
		||||
    firebase.auth().onAuthStateChanged(async function(user){if(user){firebase.auth().currentUser.getIdToken(/* forceRefresh */ true).then(function(idtoken) {
 | 
			
		||||
        console.log("/shoppinglistx idtoken:", idtoken);
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										32
									
								
								express-server/public/javascripts/firebase-app.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								express-server/public/javascripts/firebase-app.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,32 @@
 | 
			
		||||
 | 
			
		||||
// Initialize Firebase
 | 
			
		||||
// const firebaseconfig = {
 | 
			
		||||
//   apiKey: "AIzaSyCuvwf78cmSDoZ2yS4XxHZhnjUn7yIHYfw",
 | 
			
		||||
//   authDomain: "test-667ca.firebaseapp.com",
 | 
			
		||||
//   databaseURL: "https://test-667ca.firebaseio.com",
 | 
			
		||||
//   projectId: "test-667ca",
 | 
			
		||||
//   storageBucket: "test-667ca.appspot.com",
 | 
			
		||||
//   messagingSenderId: "221332577314"
 | 
			
		||||
// };
 | 
			
		||||
// firebase.initializeApp(firebaseconfig);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
var msg = firebase.messaging();
 | 
			
		||||
msg.requestPermission()
 | 
			
		||||
.then(function(){
 | 
			
		||||
    console.log("Zugriff auf msg")
 | 
			
		||||
    return msg.getToken();
 | 
			
		||||
})
 | 
			
		||||
.then(token => {
 | 
			
		||||
    console.log("MSG TOKEN: ", token)
 | 
			
		||||
    
 | 
			
		||||
})
 | 
			
		||||
.catch(err => {
 | 
			
		||||
    console.error("Msg Error: ", err)
 | 
			
		||||
})
 | 
			
		||||
 | 
			
		||||
msg.onMessage(payload => {
 | 
			
		||||
    const title = payload.data.title
 | 
			
		||||
    new Notification(title, { body: payload.data.text});
 | 
			
		||||
  })
 | 
			
		||||
		Reference in New Issue
	
	Block a user