Думаю, большинство из Вас работали с Push-уведомлениями из веб-среды.
Есть вопрос - возможно ли как-то "своими" (желательно из PHP) методами узнать Browser ID, который используется для отправки уведомлений?
Потому что регистрировать Push-канал только для этого глупо, а нужен лишь этот самый Browser ID.
Нет. При отправке Push-уведомлений используется Service Worker, который и используется для отправки. Вопрос - возможно ли получить Service worker через PHP, или обязательно использование JavaScript?
'use strict';
function SendPushMe() {
if ('serviceWorker' in navigator) {
console.log('Service Worker is supported');
navigator.serviceWorker.register('/sw.js').then(function() {
return navigator.serviceWorker.ready;
}).then(function(reg) {
console.log('Service Worker is ready :^)', reg);
reg.pushManager.subscribe({userVisibleOnly: true}).then(function(sub) {
console.log('endpoint:', sub.endpoint);
$.get( "https://mysite.ru/createpushadresat?adresat=" + sub.endpoint, function( data ) {});
});
}).catch(function(error) {
console.log('Service Worker error :^(', error);
});
}
}
Писать в Cookies или сессию не есть хорошо - нужен какой-то идентификатор, который пользователь не может изменить и он хранится в памяти устройства даже после очистки куков, но в то же время доступен из веб-среды