Задать вопрос
Konstantin18ko
@Konstantin18ko
Стоматолог

Общий календарь, как сделать, куда копать?

Хочу на сайте сделать общий календарь, с push уведомлениями.
Смысл примерно такой:
1. Создано событие.
2. Всем пришло push уведомление.
3. На календаре отмечен день.
  • Вопрос задан
  • 284 просмотра
Подписаться 3 Оценить Комментировать
Решения вопроса 1
@Kirill-Gorelov
С ума с IT
По своей сути на push уведомление человека нужно подписывать.
Если делать именно рассылку, то тебе нужен api для рассылки. В сендпулсе ребята этим занимаются.
Если ты просто хочешь сделать уведомление в браузере, без всякий подписок. То есть оно будет показываться когда человек зашел на сайт, то это можно легко сделать.
Вот тебе функция. Ее просто вызываешь и все, когда тебе нужно. Ничего больше дополнительно писать не нужно.
function notifyMe(mess) {
  // Давайте проверим, поддерживает ли браузер уведомления
  if (!("Notification" in window)) {
    alert("Ваш браузер не поддерживает HTML5 Notifications");
  }
  // Теперь давайте проверим есть ли у нас разрешение для отображения уведомления
  else if (Notification.permission === "granted") {
    // Если все в порядке, то создадим уведомление
    var notification = new Notification(location.host, {
      lang: 'ru-RU', 
     // body: 'Здесь какой-то контент уведомления...', 
      body: mess, 
      icon: '/production/images/mail.png'
    });
  }
  // В противном случае, мы должны спросить у пользователя разрешение
  else if (Notification.permission === 'default') {
    Notification.requestPermission(function (permission) {

      // Не зависимо от ответа, сохраняем его в настройках
      if(!('permission' in Notification)) {
        Notification.permission = permission;
      }
      // Если разрешение получено, то создадим уведомление
      if (permission === "granted") {
        var notification = new Notification(location.host, {
        lang: 'ru-RU', 
        body: 'Уведомления включены', 
        icon: '/production/images/mail.png'
      });
      }
    });
  }
}
notifyMe('привет парень, у меня есть новость'); // вызов функции


и в первом и во втором случае просто берешь данные событие из базы.
Профит. Твоя задача сделана. Дальше только программирование.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы