Всплывающие уведомления в браузере на jQuery By Владимир Погодин (VoVcHiK)
1 2 3 4 5 6 7 8 9 |
<script> function noti(a,b,c){ Notification.requestPermission(function (permission) { var n = new Notification(a, {body: b, icon: 'http://vp1596.ru/logi.png',tag:''}); setTimeout(n.close.bind(n), c); }); } </script> |
1 |
<script>noti('Заголовок','1 секунда сообщение','1000');</script> |
Большущее спасибо! Крутой скрипт! Давно задавался вопросом, как вызывать такие вот уведомления, но было жутко лень гуглить эту тему 😀
печально, но большинство браузеров сразу не покажут уведомление, а лишь попросят доступ...
Проверка поддерживает ли браузер
if (!("Notification" in window)) {
alert("Ваш браузер не поддерживает HTML5 Notifications");
}
Проверка запретил ли отображение
if (Notification.permission === 'default') { }
или
if (Notification.permission === 'denied') { }
default насколько я понял это выбор не известен, но будет расцениваться как denied
denied это пользователь запретил
А послать определённому устройству, зная его токен нельзя никак?
Токен? Что ты имеешь в виду?
Ну смотри. То что в статье это просто вывод уведомления. Я до сих пор не могу догнать как и кому они приходят если запустить на сервере, ведь есть много пользователей. Всем либо одно либо индивидуальное уведомление нужно.
используя Service Worker получаю ключ связку - устройство сервер. Зная его можно отправлять уведомления индивидуально, либо какой то группе устройств. И главная моя запара - не могу понять как это сделать. К параметрам как и в статье (title, body), добавляется ещё параметр to - сюда как раз токен и вписывается, но блин, нифига не работает.
Не нужно ничего прописывать, нужно либо на яваскрипте, либо на PHP определить нужное устройство и уже потом, если условие выполнено, показывать уведомление
Думается мне, что это не сработает. То есть на примере календаря.
Пришло время-> посылаем данные на клиента. -> На клиенте(js) проверяем, если это то устройство, то показываем.
То есть рассылка будет всем клиентам, но показ только у нужного.
А если бы был параметр to, то рассылка была только нужному устройству. Или я чего то ещё не понимаю в хождении данных?
Нужно на JS или PHP определить именно нужное устройство и после выполнения условия уже вывести уведомление. Оно выведется только для того человека, у которого сработало условие