Push уведомления в браузере php. Как отключить браузерные Push-уведомления. А есть готовые решения для браузерных оповещений

сайт 15.12.2017

Доброго времени суток, уважаемый посетитель.

Мгновенные уведомления с сайта о появлении нового материала, а также прочих событиях, что может быть лучше?! Данная технология пришла к нам из мира мобильных технологии – изначально мгновенные уведомления были лишь уделом мобильных приложений, но со временем «фича» была внедрена и в браузеры (мобильные, а затем и десктопные).

Оповещения увеличивают количество посетителей на ваш сайт, и являются более эффективными, нежели E-Mail подписка. Т.е. если пользователь посетил ваш сайт, одобрил запрос на включение оповещений от сайта, то он их будет видеть практически всегда, и для этого не надо совершать каких-либо лишних телодвижений, как это традиционно бывает с E-Mail рассылкой.

Сразу хочу заметить, что Web Push оповещения могут быть интегрированы только на те сайты, которые работают по защищённому протоколу (https) – таково требование технологии.

Что собой представляет Web Push

Когда пользователь заходит на сайт, на котором имеется сервис мгновенных сообщений, то будет отображено ненавязчивое сообщение о том, что сайт запрашивает разрешение на отправку уведомлений. Дизайн данного уведомления зависит от используемого браузера.

На изображении приведён пример с предложением подписаться на оповещения с сайта в десткопном браузере Google Chrome и Mozilla Firefox.

А вот так этот же запрос выглядел в мобильном браузере Chrome for Android до версии 63.0.3239.107.

Впоследствии разработчики мобильного браузера Google пересмотрели подход к выводу запроса, сделав его более агрессивным. Отныне он перекрывает контент, пока пользователь не сделает выбор.

Понимая, что это может вызывать раздражение у посетителей, в OneSignal поступили следующим образом: при заходе на сайт с мобильного браузера Google Chrome for Android будет выводиться всплывающее окно, в котором запрашивается разрешение на подписку (текст запроса настраивается). Если пользователь соглашается, то уже выводится стандартный запрос на включение оповещений в браузере.
Это распространяется только на мобильный браузер Google Chrome for Android, во всех остальных браузерах алгоритм вывода запроса подписки на оповещения остаётся неизменным.

Когда пользователь соглашается на приём оповещений, то можно задать «приветственное» оповещение, смысл которого сводится к тому, что вы были подписаны на оповещения о новых материалах сайта. И при их появлении вы будете оповещены соответствующем уведомлением.

Как вы можете видеть, в мобильных браузерах оповещения зачастую выводятся в панели уведомлений, а в десктопных (компьютерных) браузерах – они всплывают в правом нижнем углу.

Сами оповещения также настраиваются: можно установить картинку, заголовок, текст сообщения, и открытие определённой страницы при нажатии по оповещению.

Как подключить Web Push на сайт

Необходимо понять, что Web Push — это сервис, который едва ли можно реализовать за счёт просто установки плагина и подобных манипуляций. Потому то мы будем пользоваться соответствующим сторонним сервисом. В данном случае речь пойдёт о сервисе OneSignal, с помощью которого наделим наш сайт описанным выше функционалом. Почему именно он? Потому что он полностью бесплатен, не отправляет пользователям никакой рекламы и прочего.

Едва ли вообще пользователи будут знать, что Web Push вашего сайта реализован с помощью сервиса OneSignal. В этом и заключается его неоспоримое преимущество.

Каковы его минусы? Они тоже имеются. Интерфейс данного сервиса англоязычный, и к нему надо будет привыкнуть, если вы планируете формировать оттуда оповещения, которые будут отправляться подписавшимся на них пользователям.

Для интеграции в WordPress имеется официальный плагин, который, однако, мне совершенно не понравился. Его размер составляет 6.5мегабайт, что весьма немало… меня уже это ототкнуло от его использования.

Я интегрировал на сайт Web Push «ручками», прочтя руководство по интеграции (на английском), которое на сайте сервиса изложено довольно подробно.

А сами сообщения я формирую через личный кабинет на сервисе.

Об этом способе интеграции (без плагина) я и хочу вам рассказать. Стоит отметить, что воспользовавшись описываемым способом интеграции, можно наделить Web Push функционалом не только сайт на WordPress, но и работающий на любом другом движке, или вовсе состоящий из статических html страниц. Поистине универсальный вариант!

  • Первым делом необходимо перейти на сайт сервиса OneSignal и зарегистрироваться. Для этого нажмите по ссылке LOG IN и в отобразившемся окне кликните по ссылке Sign up , которая располагается внизу. Там вам необходимо будет ввести электронную почту, пароль, название компании или организации (введите любое), а также принять соглашение об использовании. Вы также можете пройти ускоренную регистрацию, если у вас имеется учётная запись Google, Facebook, Github.
  • Зарегистрировавшись, и войдя в личный кабинет, вы увидите приветственное сообщение, в котором перечисляются возможности сервиса.
  • Прощёлкав до последнего окна, нажмите на располагающуюся там кнопку Add a New App .

  • В открывшемся окне введите имя, к примеру, название сайта, и нажмите кнопку Create .

  • После этого вашему взору предстанет окно, в котором необходимо будет нажать на кнопку с надписью Website Push и нажать на клавишу Next .

  • В следующем окне нажмите по кнопке с надписью Google Chrome & Mozilla Firefox , после чего нажмите Next .

    Примечание: там ещё имеется кнопка Apple Safari , и у вас может возникнуть закономерный вопрос: а как же данный браузер? Не волнуйтесь, его мы добавим в одном из следующих шагов.

  • В следующем окне нам будет предложено ввести адрес сайта, а также его логотип (не обязательно, можно добавить потом). Сам логотип должен иметь разрешение от 192 на 192 пикселя в формате png, файл которого должен располагаться на самом хостинге. Введя данные, нажмите клавишу Save .

  • В результате откроется окно, в котором надо будет выбрать из вариантов, как будет интегрироваться сервис, вам надо будет кликнуть по кнопке Website Push , и нажать Next .

  • Информация в окне сменится, и высветится ваш Your App ID . Не закрывайте данное окно, оно нам ещё понадобится. Сейчас же перейдём к интеграции кода сервиса на сайт.

  • Для интеграции кода на сайт необходимо скачать данный архив (архив скачивается с официального сайта) с файлами, которые потребуются для успешной интеграции. В архиве имеется папка OneSignalSDKFiles , а в ней три файла:
    • manifest.json
    • OneSignalSDKWorker.js
    • OneSignalSDKUpdaterWorker.js

    Распакуйте эти файлы.

  • Далее вам необходимо открыть в текстовом редакторе файл manifest.json и отредактировать надпись OneSignal Example на имя своего сайта. Тут нет строгих требований, можно вписать имя сайта и его лозунг.

  • Теперь закачайте данные файлы в корень вашего сайта, чтобы эти файлы были доступны, если набрать их адрес в строке браузера:

    https://sitename.ru/manifest.json
    https://sitename.ru/OneSignalSDKWorker.js
    https://sitename.ru/OneSignalSDKUpdaterWorker.js

  • Но это ещё не всё. Теперь вам необходимо добавить код непосредственно в шаблон сайта. Если это WordPress, то перейдите в папку (\wp-content\themes\ ), где располагается используемая вами тема, и отыщите там файл header.php . Откройте данный файл на редактирование и впишите где-нибудь между тегами … следующий код:

    var OneSignal = window.OneSignal || ; OneSignal.push(["init", { appId: "СЮДА впишите присвоенный вам App ID", autoRegister: true, notifyButton: { enable: false }, persistNotification: true, safari_web_id: "", welcomeNotification: { "title": "Уведомления включены", "message": "При появлении нового материала на сайте вы будете уведомлены" // ,"url": "" }, promptOptions: { actionMessage: "Желаете получать мгновенные уведомления о новых статьях на сайте?", acceptButtonText: "Да", cancelButtonText: "Нет" } }]);

    Не забудьте за место СЮДА впишите присвоенный вам App ID вписать тот код, что был присвоен в вашем случае, и отображается в том окне, который был высвечен на 9 шаге.

    Title и message отвечают за «приветственное» сообщение при подписке, вы можете изменить текст в этих строках на своё усмотрение.

    А параметры actionMessage, acceptButtonText, cancelButtonText отвечают за текст запроса на подписку, что выводится в мобильном браузере Google Chrome for Android и больше нигде.

    Сохраните файл header.php с вписанным вами кодом.

  • Теперь откройте ваш сайт. Вы должны увидеть оповещение с предложением подписаться на моментальные уведомления. Согласитесь с этим предложением.

    Примечание: стоит отметить, что данный запрос отображается один раз. И если вы согласились с ним, то впоследствии он не будет появляться, а будет осуществляться автоматическая подписка. Не поможет даже очистка истории браузера.
    Я просто сам столкнулся с такой особенностью технологии, экспериментируя с интеграцией на сайт. Так что если вы не видите запроса, то не стоит «бить тревогу» и думать что что-то не работает, просто попробуйте зайти с другого браузера, с которого ранее не осуществлялся доступ на сайт.

    Поздравляю – вы первый подписчик на оповещения со своего сайта:-) Но это ещё далеко не всё.

  • Теперь вернитесь к тому окну, которое мы оставили, дабы перейти к интеграции кода на сайт, и нажмите в нём кнопку Check Subscribed Users . В результате под кнопкой всплывёт сообщение, если оно зелёное, то всё прошло успешно, можно нажать на располагающуюся в правом нижнем углу кнопку Done .

    Web Push будет действовать (подписка, получение) в браузере Google Chrome и основанных на коде Chromium: Opera, Яндекс Браузер и т.д, а также Mozilla Firefox.

  • Нам остаётся только подключить возможность работы Web Push и в браузере Apple Safari – десктопном варианте браузера Apple (не мобильном, iOS не поддерживает технологию Web Push).

    Для включения поддержки Apple Safari сделайте следующее:

    В личном кабинете OneSignal в левом меню нажмите по ссылке App Settings , в открывшемся меню нажмите на кнопку Configure , что располагается напротив пункта Apple Safari .

    В открывшемся окне введите имя вашего сайта и впишите его URL адрес. По желанию вы можете загрузить логотип сайта, который будет отображаться в оповещении. Для этого поставьте галочку у пункта I’d like to upload my own notification icons и загрузите графический файл. Требование к логотипу – разрешение 256 на 256 пикселей, формат png. Сделав всё необходимое — нажмите кнопку Save .

    Вас перебросит на страницу App Settings , но под надписью Apple Safari будет высвечен Web ID .

    Его необходимо скопировать и вставить в тот код, что мы ранее вставляли в файл header.php:

    SistNotification: true, safari_web_id: "", welcomeNotification: { "title": "Уведо...

    SistNotification: true, safari_web_id: "СЮДА вписать присвоенный Apple Safari ID", welcomeNotification: { "title": "Уведо...

    Сохраните введённые изменения.

  • Всё, интеграция и настройка закончена. Если что-то не понятно, то задавайте вопросы, а также ознакомьтесь с тем, как код вписан на этом сайте. Единственное исключение на данном сайте – я строчку кода

    переместил в так называемый «подвал» (в исходном коде страницы она отображается внизу).

    Как формировать и отправлять Web Push подписавшимся

    С кодом и интеграцией мы разобрались, теперь дело за малым – создать рассылку.

  • Для этого в левом меню нажмите по ссылке New Message .

    Там нас будет ждать мастер, с помощью которого мы создадим рассылку.

  • На странице «Кому отправлять» по умолчанию уже выбран вариант всем (Send to Everyone ). Нажмите Next .

  • На следующей странице вводится сообщение. Не обращайте внимание на надпись ENGLISH перед формой ввода, просто можно создать мульти рассылку, для каждого указанного языка. Если вам это не нужно, то смело вводите заголовок (Title ) и сообщение (Message ) и нажмите Next .

  • На данной странице нам предлагается указать иконки, картинку, и ссылку, которая будет открываться при нажатии на оповещение.

    Иконки (Icon — миниатюра, отображающаяся рядом с текстом) поддерживает Google Chrome, Mozilla Firefox (и браузеры на основе Chromium), большую картинку (Image ) только Chrome и только с версии 56. Для браузера Safari нет возможности указать иконку, в приходящих оповещениях всегда будет отображаться иконка, что была загружена на 16 шаге инструкции по подключению Веб Пуш на сайт. Такова реализация поддержки Пуш уведомлений в браузере Сафари.

    Можете игнорировать ввод большой картинки (Image ), ограничиваясь указанием иконки (Icon ).

    Ещё стоит сказать про поле Time to Live – данная опция отвечает за время жизни сообщения, по умолчанию оно равняется трём дням. Если за это время смартфон\браузер не сможет выйти в интернет, то сообщение ему не будет доставлено вовсе.

    Имеет смысл увеличить данный промежуток. Я увеличиваю данный порог до 128 дней (введя 11111111 в поле). Для его увеличения просто начните вводить цифры и в реальном времени будет выводиться устанавливаемый порог.

    Введя все данные, нажмите Next .

  • На следующей странице указывается момент, когда отправлять. По умолчанию отправка осуществляется незамедлительно, но можно попробовать использовать опцию Intelligent delivery (Recommended) – отправка сообщений в то время, когда они наиболее вероятно будут уместны для тех или иных пользователей (в зависимости от часового пояса и других факторов).

    Для продолжения нажмите кнопку Confirm .

  • В результате высветится страница с обобщающей суммарной информацией об отправке сообщения, его содержанию, какому количеству подписчиков и т.д. Для подтверждения отправки нажмите кнопку Send Message .

  • А вас перебросит на страницу статистики, где вы сможете наблюдать, сколько всего сообщений было отправлено, какие из них достигли цели, сколько раз подписчики на него нажали и т.д. Очень удобно и наглядно.

    Стоит отметить, что в левом меню вы можете выбрать пункт Templates и создать шаблон рассылки, дабы не вводить каждый раз повторяющуюся информацию при создании очередной рассылки.

    Краткий итог

    В материале мы подробно рассмотрели преимущества web push, процесса установки сервиса мгновенных уведомлений на сайт, и его использования на примере полностью бесплатного сервиса от OneSignal.

    Если имеются вопросы, то в комментариях вы можете уточнить все тонкости и нюансы.

    Пожертвование сайту сайт (cбор пожертвований осуществляется через сервис Яндекс Деньги)

    Правда жизни такова:

    Это реально сложно получать трафик на сайт.

    Но знаете что еще хуже?

    90% посетителей, побывавших на вашем сайте не вернутся больше никогда.

    Эксклюзивный бонус: Нажмите здесь чтобы скачать чеклист по созданию магнетических текстов. Статьи, написанные по этому чеклисту будут словно магнитом удерживать внимание читателя (нажмите чтобы скачать ).

    Обидно конечно... Вы тратите неимоверные силы на и его развитие, но самый ценный актив - посетители, забывают о вас в тот же день, в который узнали.

    Но не отчаивайтесь, есть решение:

    Установите на свой сайт браузерные пуш уведомления .

    Вот в чем фишка:

    Пуш уведомления для сайта позволяют быть на связи с вашими посетителями.

    На некоторых блогах внедрение пуш уведомлений увеличило повторные посещения в несколько раз.

    Да и просто, это хорошая альтернатива email рассылке.

    В этой статье вы узнаете:

    • В чем преимущество пуш уведомлений
    • Стоит ли использовать эту относительно новую технологию
    • Список лучших сервисов пуш уведомлений
    • Как подключать push`ы на свой сайт
    Но прежде, небольшой пример...

    Компания Extra - один из крупнейших ритейлеров на Ближнем Востоке.

    С помощью пуш уведомлений они смогли увеличить продажи мобильным пользователям в 2 раза:

    Если вы думаете, что на этом все - вы глубоко ошибаетесь.

    Помимо этого, доля повторных покупок выросла в 4 раза (!!!).

    Как итог, маркетологи компании Extra признали пуш уведомления как самый эффективный инструмент удержания клиентов.

    Что такое push уведомления для сайта?

    Все еще не уверены, что такое push уведомления для сайта?

    Все очень просто:

    Заходя на какой-нибудь веб ресурс вы можете увидеть вот такое всплывающее окно:

    Пример запроса на получение push уведомлений

    Если пользователь соглашается, вы можете отправлять уведомления о выходе новых статей, появлении новых продуктов и т.д.

    Сообщения появляются в правом углу экрана. При этом браузер может быть свернут или даже закрыт.

    Пример пуш уведомления:

    Браузеры, поддерживающие Push уведомления

    Первой технологию пуш уведомлений в браузере начала поддерживать Safari . Затем, в апреле 2015 года ее внедрили в Chrome версии 42 .

    И наконец, в начале 2016 года пуш уведомления начали поддерживаться в браузере Firefox версии 44 .

    На данный момент уже более 75% всех браузеров поддерживают отправку Push уведомлений.

    Почему пользователям стоит подписываться на пуш уведомления

    Сначала давайте затронем те преимущества, которые получают пользователи при подписке на push уведомления.

    1. Удобство прежде всего

    То, что вы должны уяснить как дважды два:

    Люди покупают на тех сайтах, которые предлагают лучший сервис. Это же касается лояльности читателей.

    Но как быстро и просто сделать сайт удобным для посетителей?

    Ответ очевиден:

    С помощью пуш уведомлений.

    Представим, я подписался на обычные обновления вашего сайта...

    Мне придется частенько открывать свой почтовый ящик в ожидании email письма от вас.

    В случае с push уведомлениями все намного проще.

    OneSignal

    После этого в левой колонке вашей админ зоны появится раздел OneSignal Push.

    Последующая настройка полностью расписана по шагам, но на английском языке. Поэтому я вкратце разъясню все необходимые действия.

    Перед вами откроется окно, в котором нужно перейти в раздел Configuration:

    Все нужно делать так, как показано на скриншотах и в итоге вы получите номер проекта и API ключ.

    Введите номер проекта в поле Google Project Number в разделе Configuration. API ключ вам нужно сохранить (еще понадобится).

    Там же укажите API ключ от Google проекта и наличие SSL сертификата на вашем сайте.

    Если ваш сайт находится по адресу http, вы ничего не меняете. Если же https, то ставьте галочку в соответствующем чекбоксе.

    Зачем это нужно?

    Дело в том что push уведомления поддерживаются только на https сайтах. Однако, сервис OneSignal решает проблему тем что создает для вас субдомен у себя.

    В качестве субдомена можете использовать адрес вашего сайта. Например, вместо сайт - я сделал site4business.onesignal.com

    В подразделе Modify Site рассказывается о видах внедрения пуш уведомлений. В подразделе Safari Push все аналогично предыдущим шагам.

    И наконец, расположение кнопки подписки и ее текст вы можете изменить в разделе Configuration.

    Имейте ввиду что для http доступна подписка на уведомления только при помощи кнопки. Ее дизайн вы можете свободно изменять.

    А всплывающие попап окна доступны только для https сайтов.

    PushCrew

    Для начала установите плагин PushCrew.

    После этого, заведите аккаунт на сайте сервиса .

    И наконец, в разделе Customize for desktop вы можете настроить внешний вид всплывающих окон.

    Вот полный список сервисов , предоставляющих возможность внедрения пуш уведомлений:

    Вы наверняка принимаете оповещения на свою электронную почту: заходите в почтовый клиент и смотрите пришедшие письма. В данном случае эта технология является технологией pull (тянуть), т.е. вы заходите на сайт и "тянете" с него данные, когда они вам нужны.

    В случае же с push (толкать) уведомлениями, ресурс проталкивает новые данные вам сам. При этом вы сразу получаете самые свежие данные, ведь в данной технологии нет определенного периода проверки данных, они приходят в режиме онлайн. Используя "пуши" вы не обязательно должны получать уведомления. Через push-технологию можно например синхронизировать данные если они обновились.

    Уведомления бывают:

    • Браузерные - через push api или через дополнение
    • Мобильные - через мобильное приложение
    • На PC через приложение, независимо от браузера
    Вы можете сразу приступить к созданию канала Push-уведомлений, Браузерные (web) push-уведомления Они приходят в браузер с сайта, на котором подписан пользователь. Они могут приходить как на компьютер, так и на андроид-устройство в браузер хром, но iOS устройства не могут принимать веб-пуши ни при каких обстоятельствах.

    Вот так выглядят уведомления разных типов в браузере Chrome

    Первое оповещение сделано через стандартный Notification API, второе сделано через Push API. Эти оповещения не исчезают - но для них не применяется сглаживание изображения на многих платформах. (вы можете заметить по качеству картинок)
    Третий пуш сделан через Rich Notification. Эти оповещения приходят через расширения , в них может быть дополнительная информация, кнопки, изображение под уведомлением. Возможностей больше - но они автоматически скрываются, хотя возможно в будущем будет доступно из "закрепление".
    Это оповещения в хроме, но есть еще оповещения в Firefox и Safari.


    Firefox

    Safari

    Эти виды оповещений предоставляют многие сервисы web push уведомлений. Однако мы хотим объяснить вам, что сама по себе отправка оповещений бесплатна . Эти оповещения отправляются через:

    GCM : Google, полностью бесплатно, нужно лишь создать ключ в консоли разработчика
    APNS : Apple, требуется любой знакомый разработчик с сертификатом, либо за 100$ в год можно взять его самому
    MSP : Mozilla Push Service, полностью бесплатно. Даже не нужна регистрация. Открытый стандарт.

    Мы предостерегаем вас, не нужно платить несколько тысяч рублей за количество оповещений или подписчиков. Так как сама услуга рассылок бесплатна (в отличии например от SMS, где нужно платить оператору) брать деньги можно только за услуги посредника, удобство, статистику и т.д. Но это никак не стоит несколько тысяч рублей, тем более с ростом числа подписчиков. Да нагрузка от миллиона оповещений в час будет значительна - за такие цифры можно платить деньги, т.к. ваш сервер может не потянуть. Но поверьте - отправлять даже 100 тысяч оповещений в сутки это ерунда. Через GCM можно за секунду отправить более 5-7 тысяч пушей 5-7 пакетами. Многие сервисы веб-пушей требуют за это по 1000 рублей в месяц или даже больше. За 1 секунду работы небольшого скрипта.
    PushAll поддерживает все эти типы оповещений и позволяет делать рассылки абсолютно бесплатно и без ограничений.

    Мобильные push-уведомления Это оповещения, которые приходят вам на мобильный телефон от различных приложений. Например оповещения на Android, через приложение PushAll выглядит вот так
    А вот так на iOS в нашем приложении

    Вы не сможете прикрутить эти оповещения "нативно" на свой сайт. Существует возможность принимать браузерные оповещения на андроиде через хром, но эти оповещения очень громозки и некачественны, разницу можно оценить на примере ниже:

    Сравнение оповещений

    Вы можете например отправить оповещение через телеграм (1) , но тогда у вас не будет иконки вашего сайта, а при клике пользователь будет попадать в диалог, а не сразу на ваш ресурс. (2) Это как раз браузерное оповещение на Android, на этом скриншоте не так заметно, но изображение более низкого качества, лишняя кнопка с настройками, и строка с адресом сайта. Плюс ко всему из за обновления контента может появляться лишнее оповещение (4) . Нативное решение через приложение (3) является наиболее привлекательным для пользователя решением.
    Push-уведомления на смарт-часах Moto 360:



    Наиболее заметна разница на смарт-часах. Сверху веб-оповещение, снизу оповещение через приложение

    Также уведомления на Android в последней версии нашего приложения умеют группироваться по каналам:

    Группировка уведомлений на Android Android История внутри приложения для iOS Экзотические оповещения

    Вы уже видели выше, что оповещения от нашего сервиса могут приходить даже через телеграм . Засчет этого, пользователи которые используют активно телеграм могут легко подключиться. Также мы отправляем оповещения на электронную почту. При этом оповещения приходят "пачками", через установленные промежутки времени.

    В итоге получается, что мы предоставляем безопасный "мост" между пользователем и сторонним сервисом. Пользователь может доверить свой электронный ящик промежуточной стороне, в которой он уверен и не бояться, что его ящик скомпрометируют или он попадет в спам-лист. При этом отправляющий сайт также не платит за почтовые рассылки как и за все остальные виды оповещений.

    Письма приходят в стилистике оповещений Какие виды оповещений наиболее популярны? У нас большой опыт в рассылки push-уведомлений, мы отправили их более 60 миллионов. Ниже представлены данные по 33214 устройствам в нашей системе, а также какие устройства и методы подключения предпочитают пользователи:
    • 11936 35% - Android приложение
    • 6992 22% - Chrome дополнение
    • 6204 18% - WebPush
    • 3514 11% - Telegram
    • 2688 8% - Email
    • 1465 4% - SocketPush
    • 227 1% - iOS
    • 188 1% - Safari
    Как вы видите, около 60% пользователей выбирают нативные решения, которые устанавливаются на их устройства. Проще - не значит лучше. Только 18% пользователей выбирают оповещения, которые включаются в один клик, скорее всего это связано с предыдущим плохим опытом на других сайтах. 11% пользователей используют Telegram - большая часть из них пользователи iOS, которые ранее ждали нативное решение.

    По итогам мы хотим донести до своих читателей, что реализация веб-пушей на вашем сайте покроет лишь 18% потребностей вашей аудитории, вы теряете мобильных пользователей, теряете тех, у кого был плохой опыт с веб-пушами и многое другое.
    Также интересна высокая доля Email и SocketPush. Для пользователя это наиболее безопасный метод, когда он может открыть сайт и получать с сервисов оповещения, а потом закрыть его и они перестанут ему мешать. При этом нужно понимать, что тут работает тот же принцип, что и в других Push-уведомлениях - когда пользователь появляется онлайн - все пропущенные оповещения приходят . Почему-то многие сервисы web push уведомления преподносят эту функцию как инновацию, но это уже заложено в протоколы GCM и APNS.

    Интересно увидеть статистику за последние 2 недели, дело в том, что недавно у нас вышло приложение для iOS, и мы обновили приложение для Android и все несколько изменилось.
    Нужно учитывать, что новых крупных каналов за это время не прибавилось - то есть это чисто пассивный приток новых пользователей - 950 устройств.

    • 202 20% - WebPush
    • 72 8% - iOS
    • 38 4% - Email
    • 3 около 0% - Safari
    • 1 около 0% - SocketPush
    По этой статистике видно - пассивно сильно растет WebPush как самый простой способ подписки для небольшого числа каналов. Однако при этом 70% используют нативное решение. Более того - iOS приложение устанавливают чаще чем добавляют бота в телеграм. Если мне все таки нужны чистые web push уведомления на своем сайте? Начнем с того, что вам понадобится:
    1. SSL-сертификат. Его можно получить бесплатно, но основная его проблема не в том, что его можно купить или получить. Основная проблема в нагрузке. Дело в том, что при осуществлении зашифрованного соединения расходуется очень много ресурсов сервера. Это значит, что если у вас сервер справлялся с нагрузкой без SSL, но был нагружен на 50%, скорее всего вам придется купить еще 2-3 сервера, либо провести очень большую оптимизацию. Также в моменты рассылок, вам нужно будет отдавать контент (заголовок и текст) оповещения всем пользователям, которые его примут. То есть если у вас 100 тысяч подписчиков, то к вам на сервер за 10 секунд придет несколько тысяч запросов и все они будут требовать SSL Handshake.

    2. Контроль устройств и база данных. Вам нужно будет записывать каждого пользователя и его ключ, следить, чтобы он был новым (он иногда обновляется) отбрасывать старые данные, самим собирать статистику и т.д.

    3. Ключ для GCM в консоли Google - это бесплатно. Чтобы отправлять оповещения на Safari нужен аккаунт разработчика - он стоит 100$ в год.

    Неумелое использование оповещений, особенно если вы будете вызывать окно запроса сразу как пользователь заходит на сайт может привести к плачевным последствиям



    Пользователи iGuides "очень рады" оповещениям

    Дело в том, что многие пользователи активируют оповещения, не понимая что это такое. Фактически, если пользователь не подтвердил своё желание получать от вас рассылки (в здравом уме), а вы присылаете ему контент, то по закону это является спамом. То есть, любой пользователь, который нечаянно кликнет "Разрешить" на вашем сайте, а вы его у себя на сайте не предупредите о том, что вы будете ему рассылать оповещения, может подать на вас в суд за спам.

    Вы можете сами реализовать оповещения, и мы не будем её тут полностью переписывать (только если потом, подробно сами инструкции с кодом)

    А есть готовые решения для браузерных оповещений? Если вы сами не можете реализовать оповещения, но вам нужны именно браузерные уведомления на вашем сайте - вы можете попробовать например OneSignal . Они предоставляют неплохие оповещения, причем бесплатных тарифных планов должно хватить.

    Ни в коем случае не используйте сервисы, которые просят с вас деньги за число подписчиков. Дело в том, что со временем все больше и больше пользователей будут запрещать эти оповещения на вашем сайте. Вы обнаружите, что некоторая доля ваших оповещений не доходит. Сначала это будет 30%, потом 40% и может дойти даже до 80%. При этом с вас будут требовать сумму за полное число подписчиков.

    Также обращайте внимание на мелкий текст - некоторые сервисы ограничивают оповещения. Например ограничение в 30 оповещений в месяц каждому пользователю. Что это значит? Это значит, что вы сможете отправить 1 оповещений в сутки всем пользователям. Если у вас статьи на сайте, это еще не так плохо - можно выделить одну важную и отправить. Если же вам нужно рассылать личные сообщения и иногда больше 1го оповещения в сутки - это недопустимо. Такие сервисы будут требовать с вас за каждые 30 оповещений полную ежемесячную плату - за бесплатные оповещения.

    Итоги Push-уведомления это полезный инструмент, но с ним надо уметь работать и знать подводные камни. Этот рынок сейчас только развивается, появляются сервисы, которые требуют деньги "за новизну". Но на самом деле во всем цивилизованном мире уведомлениями давно пользуются, и там они уже по большей мере бесплатные. Также нужно учитывать интересы пользователей и не ограничивать их в выборе методов приёма оповещений.

    Мы предоставили вам весомые доказательства того, что оповещения используются на множестве платформ и пользователям нравится такой подход. А если рады пользователи, то оповещения будут восприниматься с позитивной стороны. Пользователи будут получать от вас самую полезную информацию в удобном для них виде, что позволит расширить активную аудиторию вашего ресурса.

    Дорогие друзья, давно не писал сам статьи на сайт, решил что от себя буду писать только полезные статьи, которые будут интересны не только мне, но и моим читателям. Как вы наверное заметили на сайте появилась интересная функция, это push notification (в народе пуш уведомления). Эта функция по моему личному мнению революционная, которая отодвинет в сторону подписки на e-mail рассылки и социальные далеко в сторону, и даже в будущем заменит их. А вот почему:

  • Push notification приходят прямо в браузер или в ваш смартфон.
  • Более высокий ctr (нажатия по ссылке) по сравнению с обычными рассылками, так как читатель (подписчик) получит уведомление прямо в своем браузере в нижнем правом углу (или в виде push уведомления в строке состояния в смартфоне).
  • Вы больше не будете зависеть от службы рассылки писем (если вы не использовали свой почтовый сервер для рассылки своих писем).
  • Это круто использовать новые технология в своем проекте.
  • На примере будет показана настройка push notification в wordpress сайте (я ярый фанат вордпресса, т.к. эта удобная и популярная CMS и реализация пуш уведомления реализуется в пару кликов).

    Для начала вам понадобится SSL сертификат, да, к сожалению обычные "http" сайты не смогут полноценно работать с push notification. Есть сторонние сервисы, которые конечно могут вам позволить добавить эту функцию на ваш сайт, но есть несколько минусов:

  • Не все сервисы бесплатные, у большинства сервисов push уведомления есть базовый тариф, который позволит подписать/отправить 500-1000 подписчиков, но вы не будете хозяином своей жизни.
  • Как я заметил некоторые сервисы злоупотребляют вашими подписками, и могут отправить свои рекламные уведомления (по крайнее мере в базовом тарифе было так) я очень удивился и был зол, когда получил левую ссылку не относящую к моему сайту.
  • Жирный минус, пользователю придется 2 раза нажать "разрешить" уведомление, в первый раз на вашем сайте, а второй раз выйдет диалоговое окно от сервиса с "https" и в нем, в домене этого сервиса пользователю придется еще раз нажать кнопку "разрешить". Как вы наверное догадались, это может отпугнуть вашего потенциального подписчика от подписки, слишком много телодвижении. Хватит это терпеть!
  • В моем же случае, пользователю достаточно 1 раз нажать кнопку "разрешить" в маленьком окне, и он уже будет зарегистрирован в системе и в при выходе новой статьи он будет получать уведомления уже прямо от моего сайта.

    Думаю хватит воды, и перейду к делу.

    Как я сказал выше, вам нужен SSL сертификат (те кто не знает что такое SSL и https, большой брат google вам поможет). Вы можете воспользоваться сервисом CDN cloudflare и в нем включить поддержку https (это самый легкий вариант, если будет интересно, могу написать статью как добавить сайт в cloudflare). Но я решил, что хочу добавить свой сертификат на сайт.

    По гуглив немного, я нашел сервис "Let’s Encrypt" (https://letsencrypt.org) который позволяет бесплатно получить самый простой ssl сертификат с проверкой домена. Этого для нашего дела будет достаточно. Написал своему хостеру, что хочу добавить SSL сертификат от "Let’s Encrypt", хостеру правда пришлось поменять панель управление хостингом с ISPmanager на Plesk т.к в Plesk есть плагин, который в один клик добавляет SSL сертификат от "Let’s Encrypt". Если ваш хостер не может вам поменять панель управления, или в Plesk не установлен плагин "Let’s Encrypt" вы можете воспользоваться как я написал выше сервисом CDN cloudflare или поменять ваш хостинг на более "нормального" хостера.

    Если у вас панель управления Plesk и в нем установлен плагин "Let’s Encrypt".

  • На главной странице панели управления найдите ссылку "Let’s Encrypt" и нажмите на него.
  • Можете оставить e-mail адрес по умолчанию или указать другой.
  • Поставьте галочку "Include www. as an alternative domain name. " для того, чтобы сертификат работал и с "www"
  • Нажмите кнопку Install и подождите несколько секунд.
  • Все, сертификат установлен.
  • После подготовки вашего сайта, и проделывания нужных нам действий. Вам понадобится настроить wordpress, чтобы он переадресовывал посетителей на "https://" версию вашего сайта. Делается это следующем образом, заходите в админку вашего сайта. Настройки - Общие настройки. В общих настройках, в "Адрес WordPress (URL)" и "Адрес сайта (URL)" меняете "http://вашсайт" на "https://вашсайт". Все, если вы правильно установили SSL сертификат, то ваш сайт будет работать как и прежде, но в адресной строке появится значок зеленого замка. Это означает, что ваше соединение защищено, и канал между вами и сервером будет шифроваться.

    Следующим этапом будет установка плагина "Chrome Push Notifications" (https://wordpress.org/plugins/chrome-push-notifications) этот плагин сделает за вас грязную работу, в нем будет достаточно написать ключи которые выдаст вас google, об этом чуть ниже. Почему-то после установки плагина и после заполнения нужных форм у меня ничего не заработало, возможно разработчик плагина исправит это, но я решил, что не буду ждать пока исправят работу плагина, и вручную вписал нужные строки в шаблон моего блога.

    Предположим вы установили плагин и сайт у вас с ssl сертификатом. Теперь вам необходим аккаунт в gmail, для того, чтобы попасть в консоль и активировать нужные нам API. Снизу добавил видео что нужно сделать в "google developer console", а это пошаговая текстовая инструкция:

  • Зайдите на сайт https://console.developers.google.com
  • Если вы не разу не создавали проекты, то нажмите ссылку "Create a project", если Вы ранее уже создавали проект, то правом в верхнем углу нажмите на название старого проекта, выйдет меню, в нем найдите ссылку "Create a project" и нажмите на нее.
  • Выйдет диалоговое окно "New project", напишите латинскими символами название проекта и нажмите кнопку "Create".
  • Подождите несколько секунд пока проект не создаться, после нажмите на проект (ID) и появится список, в этом списке нам нужен "Project number", запишите его в блокноте и сразу впишите в плагин "Chrome Push Notifications" в строку "Project Number".
  • Следующий пункт, нажмите на "Use Google API" найдите ссылку "Cloud Messaging for Android" и нажмите на нее. Дождитесь пока появится кнопка "Enable API" и нажмите на эту кнопку.
  • После нажатия кнопки, у вас должна появится предупреждение и кнопка "Go to Credentials" нажмите эту кнопку.
  • Следующий пункт, нужно выбрать какой API нужно использовать, нужно выбирать именно "Google Cloud Messaging for Android", а форму вызова API "Web browser" нажмите кнопку "What credentials do I need?"
  • Можете не менять название ключа, а в строке "Accept requests from these HTTP referrers (web sites)" указать свой сайт, для того, чтобы другие сайты не могли использовать ваш API и нажмите кнопку "Create API key"
  • Мы почти закончили, запишите или лучше сразу вставьте в плагин ваш API ключ в строку "GCM API Key".
  • Все с Google мы разобрались, перейдем на наш сайт. Как я говорил, у меня почему-то плагин сразу не заработал, возможно это только мне не повезло, мне пришлось поковыряться на сайте разработчика, чтобы понять, почему у меня не заработал плагин. Если плагин у вас тоже не работает, то можете повторить мои действия.

    1. Нужно добавить jQuery в вашу тему, если он у вас не стоит. Я использую CDN от google, вы можете загружать его с него же или со своего сайта. Добавить нужно в header.php

    2. Создайте файл с названием и расширением manifest.json в корневой папке своего сайта и впишите туда, номер вашего проекта, который вы взяли с "google developer console":

    {"gcm_sender_id": "номер-вашего-проекта"}

    Запись добавляется до тега

    3. После этого, зайдите в меню "виджеты" и добавьте текстовый виджет и в него впишите следующие значения, замените "вашсайт.кз" на домен вашего сайта.


    /* */

    4. После всех этих действии, обновите кэш wordpress (если у вас установлен плагин кэширования) и зайдите на главную страницу. У вас должно появится окно push notification. Надеюсь статья вам помогла, если будут вопросы обращайтесь, по мере возможности буду помогать.

    P.S: Забыл сказать, этот push notification работает только в браузерах хром от google, думаю в будущем напишу как реализовать такую функцию и в iOS устройствах и в других браузерах.

    Как сделать push уведомление (notification) на сайте

    62 оценок, Средняя оценка: 4.9 из 5

    Push-уведомления - это всплывающие сообщения, которые содержат краткий текст, картинку и ссылку на сайт отправителя. Изначально они использовались только в мобильных приложениях, но в последние годы популярной стала технология браузерных push-уведомлений, или web push.

    Для сайтов такие уведомления - эффективный способ формирования собственной базы подписчиков. Для того, чтобы стать одним из них, пользователю достаточно просто нажать на кнопку во всплывающем окне браузера. После этого сообщения web push всплывают со звуком и и поверх всех окон на экране компьютера, даже когда браузер не запущен.

    Кто их рассылает и зачем это пользователям

    Push-уведомления активно используют новостные порталы, интернет-магазины, туристические агентства и даже некоторые банки. СМИ таким образом анонсируют новые статьи, интернет-магазины - акции, распродажи или обновления ассортимента; турагентства - актуальные предложения по отелям и турам, банки - рассылки по своим продуктам. Кроме этого, так можно получать уведомления об оплате товара, напоминания о продлении тарифов обслуживания, подтверждение информации о выезде/вылете (в случае с турагентствами), и другие оповещения.

    Главный плюс push-уведомлений - в отличие от e-mail-рассылок, такие сообщения более адресные. Каждому зарегистрированному подписчику присваивается шифрованная строка (токен). Токен уникален для каждого домена, ключа и типа устройства. Благодаря этому, пользователь, который подписался на web push с рабочего ПК, не будет получать дополнительные уведомления на свой мобильный телефон или личный компьютер. Взять базу токенов чужих подписчиков поэтому тоже невозможно: для каждого сайта токен будет свой.

    Почему все жалуются на web push

    Недостатки push-уведомлений вытекают из их же достоинств: не все компании используют этот способ по назначению, беспрерывные текстовые сообщения с однотипной рекламой превращаются в спам. Если у пользователя слишком много подписок на уведомления с разных сайтов, в какой-то момент это начинает раздражать.

    Как отключить пуш-уведомления в браузере, если они вам не нравятся: В Google Chrome:

    Запустить бразуер Chrome на компьютере, в правом верхнем углу окна нажать на три точки и перейти в «Настройки»;

    В нижней части страницы кликнуть «Дополнительные»;

    В разделе «Конфиденциальность и безопасность» выбрать «Настройки контента»;

    Выбрать «Уведомления»;

    Выбрать подходящий вариант:

    1) заблокировать все уведомления - отключить параметр «Спрашивать разрешение перед отправкой».

    2) заблокировать уведомления от определенного сайта - рядом с надписью «Блокировать» нажать «Добавить», ввести адрес страницы и снова выбрать «Добавить»;

    Для того, чтобы вновь разрешить уведомления от определенного сайта, рядом с надписью «Блокировать» надо нажать «Добавить», ввести адрес страницы и снова выбрать «Добавить».

    В Safari:

    Скрыть запросы сайтов на отправку уведомлений в Safari можно, выбрав меню Safari > «Настройки» > «Веб-сайты» > «Уведомления». В последнем разделе надо снять флажок «Разрешить веб-сайтам запрашивать разрешение на отправку pushуведомлений». С этого момента Safari не будет спрашивать вас при посещении веб-сайтов, которые могут отправлять уведомления. Подключить уведомления снова при необходимости можно также в настройках браузера.

    В «Яндекс-браузере»:

    Для создания этого браузера использовался такой же движок, как в Chrome, поэтому алгоритм действий здесь будет почти одинаков. Для того, чтобы отключить уведомления, надо перейти в «Настройки», затем открыть «Дополнительные», найти в них раздел «Личные данные» и кликнуть по кнопке «Настройки содержимого». В пункте «Уведомления» после этого надо выбрать «Не показывать уведомления с сайтов» и нажать «Готово».

    В Opera:

    Нажать на иконку «Меню» со значком Opera, зайти в «Настройки» и в списке разделов выбрать «Сайты». После этого надо в левой части окна найти пункт «Уведомления» и отметить пункт «Запретить сайтам показывать системные уведомления».

    В Mozilla Firefox:

    Firefox - исключение из всех браузеров: здесь также можно отключить уведомления, отметив галочкой пункт «Не беспокоить» в настройках содержимого, но блокироваться они будут только до того, как вы перезапустите браузер. Пользователям, желающим раз и навсегда отключить push-уведомления, надо открыть в браузере новую вкладку и ввести в адресной строке ввести команду about:config.

    После этого браузер покажет предупреждение о риске изменения настроек - нужно подтвердить, что вы его принимаете. Затем набрать в строке поиска dom.push.enabled. В появившемся окне переключить значение параметра с true на false. Это значит, что о push-уведомлениях можно забыть.