Надеюсь, я не получаю отрицательных отзывов об этом, я пытался настроить веб-уведомления для моей CMS, используя Firebase
, и я заметил, что Документация Google Firebase по этой теме огромный, я имею в виду очень большой, вы запутались.
До сих пор мне удавалось добавить функциональность, позволяющую людям подписываться на уведомление, позволяя браузеру запрашивать их разрешение на отправку им уведомлений, а затем я получаю уникальные токены после того, как они принимают и сохраняют эти токены в моей базе данных, мне также удалось поменять месторасположение service worker
и все выглядит хорошо и модно.
Теперь я хочу отправить уведомление всем моим пользователям (токенам), которые хранятся в моей базе данных, Я думаю, что их просмотр и отправка уведомления с использованием CURL
каждому из них в отдельности - неприятное решение. Я не могу найти документацию о том, как отправить уведомление на все мои токены за один вызов CURL.
Это мой код:
<!-- Firebase Technologies -->
<!-- Firebase App is always required and must be first -->
<script src="https://www.gstatic.com/firebasejs/5.1.0/firebase-app.js">
</script>
<script src="https://www.gstatic.com/firebasejs/5.1.0/firebase-
messaging.js"></script>
<script>
// Initialize Firebase
var config = {
apiKey: "AIzaSyAR84lF2vbnfUWPZ2899dnqiTthgvfv7Ms",
authDomain: "lazemnicms.firebaseapp.com",
databaseURL: "https://lazemnicms.firebaseio.com",
projectId: "lazemnicms",
storageBucket: "lazemnicms.appspot.com",
messagingSenderId: "268754114869"
};
firebase.initializeApp(config);
messaging = firebase.messaging();
//Registering the service worker
navigator.serviceWorker.register("firebase-messaging-sw.js", {scope: "firebase-cloud-messaging-push-scope"}).then(function (registration) {
messaging.useServiceWorker(registration);
}).catch(function (err) {
// registration failed :(
console.log('ServiceWorker registration failed: ', err);
});
permissionGranted = false;
messaging.getToken().then(function(currentToken) {
if (currentToken) {
console.log(currentToken);
permissionGranted = true;
//sendTokenToServer(currentToken);
//updateUIForPushEnabled(currentToken);
} else {
permissionGranted = false;
}
}).catch(function(err) {
permissionGranted = false;
});
А также, если пользователь получил refreshedToken
, как я могу узнать старый токен этого пользователя, чтобы я мог удалить его из своей базы данных после сохранения его / ее нового токена?
Эти вопросы меня действительно беспокоят.
Заранее спасибо.