Кому подходят уведомления во ВКонтакте
ВКонтакте — рабочий инструмент для многих небольших компаний, интернет-магазинов и студий: там ведут сообщество, отвечают клиентам и общаются внутри команды. Если менеджер и так весь день в сообщениях ВКонтакте, уведомление о падении сайта там он увидит быстрее, чем письмо.
Скорость реакции зависит от интервала проверок: раз в минуту на платных тарифах и раз в 5 минут на бесплатном. Сообщение отправляется сразу после проверки, которая зафиксировала сбой.
Как работает отправка
PingDesk вызывает метод messages.send API ВКонтакте с ключом доступа вашего сообщества. Сообщение приходит от имени сообщества на русском языке: первая строка — что случилось и с каким монитором, например «🔴 Недоступен: Интернет-магазин», ниже — адрес, детали проверки, время события по Москве и ссылка на монитор в PingDesk.
Из этого следуют ограничения самого ВКонтакте, о которых стоит помнить при настройке.
- У сообщества должны быть включены сообщения.
- Пользователь должен разрешить сообщения от сообщества или написать ему первым — иначе ВКонтакте отклонит отправку.
- Для беседы сообщество должно быть её участником, а peer_id считается как 2000000000 + ID беседы.
- Один канал PingDesk — один получатель. Для нескольких человек создайте несколько каналов или используйте общую беседу.
Беседа команды вместо личных сообщений
Если о сбое должны знать несколько человек, удобнее одна беседа, чем несколько личных каналов. Добавьте сообщество в беседу, укажите её peer_id — и уведомления увидят все участники. Это экономит лимит каналов тарифа: 1 на бесплатном, 5 на Starter, 10 на Pro и 50 на Agency.
В разделе «Правила уведомлений» можно направлять во ВКонтакте не всё подряд: в поле «Каналы» выберите конкретный канал вместо «Все активные каналы». Например, о падении сайта узнаёт беседа команды, а о продлении домена — только владелец.
Повторы, задержка и кулдаун
Стандартное правило «Сайт недоступен» отправляет сообщение сразу и повторяет его каждые 5 минут, пока сайт лежит. После восстановления повторы останавливаются, и приходит одно сообщение о восстановлении — как в примере выше.
Отдельно от напоминаний работают повторные попытки доставки: если ВКонтакте не принял сообщение или не ответил вовремя, PingDesk пробует снова через 1, 5, 15, 30 и 60 минут, пока проблема ещё актуальна. Ошибки, которые сами не исправятся, например не заполненные настройки канала, не повторяются. Каждая попытка видна в «Журнале уведомлений».
- «Задержка перед отправкой» — короткий сбой, после которого сайт сам поднялся, не превратится в сообщение.
- «Повторять каждые» — напоминание о нерешённой проблеме; 0 отключает повторы.
- «Кулдаун сценария» — не чаще одного одинакового события за заданный срок, минимум 60 секунд.
Безопасность ключа сообщества
Ключ доступа сообщества хранится в базе PingDesk в зашифрованном виде (AES-256-GCM) и расшифровывается только в момент отправки. Выдавайте ключу только право на сообщения — для уведомлений другие права не нужны. Если ключ утёк, удалите его в настройках сообщества, создайте новый и обновите канал в PingDesk.
Частые вопросы
Можно ли подключить ВКонтакте на бесплатном тарифе?
+
Да. На бесплатном тарифе доступен один канал уведомлений, и им может быть ВКонтакте. Сайт на этом тарифе проверяется раз в 5 минут.
Можно ли получать уведомления в беседу?
+
Да. Добавьте сообщество в беседу и укажите peer_id, равный 2000000000 + ID беседы. Сообщения увидят все участники.
Почему тестовое сообщение не приходит?
+
Чаще всего получатель не разрешил сообщения от сообщества или у сообщества выключены сообщения. Также проверьте, что у ключа есть право на сообщения сообщества, а peer_id указан верно.
Как быстро придёт уведомление о падении?
+
Сразу после проверки, которая зафиксировала сбой: раз в минуту на платных тарифах и раз в 5 минут на бесплатном. Если в правиле задана задержка перед отправкой, сообщение уйдёт после неё.
Придёт ли сообщение, когда сайт заработает?
+
Да. Стандартное правило «Сайт восстановился» отправляет одно сообщение со временем ответа и моментом восстановления.
Можно ли использовать личный токен пользователя вместо ключа сообщества?
+
Канал рассчитан на ключ доступа сообщества: сообщения отправляются от имени сообщества методом messages.send. Используйте отдельное служебное сообщество, если не хотите смешивать уведомления с перепиской с клиентами.
Как отправлять уведомления нескольким людям?
+
Удобнее всего через беседу, в которую добавлено сообщество. Если нужны личные сообщения, создайте отдельный канал на каждого получателя с тем же ключом и разными peer_id — каждый канал учитывается в лимите тарифа.