Konstantin18ko
@Konstantin18ko
Стоматолог

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

Хочу на сайте сделать общий календарь, с push уведомлениями.
Смысл примерно такой:
1. Создано событие.
2. Всем пришло push уведомление.
3. На календаре отмечен день.
  • Вопрос задан
  • 283 просмотра
Решения вопроса 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('привет парень, у меня есть новость'); // вызов функции


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

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

Похожие вопросы
23 нояб. 2024, в 01:31
1000 руб./за проект
23 нояб. 2024, в 00:16
2000 руб./за проект