Документация
Подключение Slack через входящий вебхук
Создайте входящий вебхук Slack для канала, добавьте его в AutoPSEO, отправьте тестовое сообщение и устраните ошибки, которые возвращает Slack, если публикация не удалась.
AutoPSEO публикует сообщения в Slack через входящие вебхуки. Slack выдаёт URL, который пишет в один канал; вы вставляете этот URL в AutoPSEO, и отчёты с оповещениями начинают приходить туда. Сам AutoPSEO ничего не устанавливает в вашем рабочем пространстве: он не может читать сообщения, получать список ваших каналов или публиковать что-либо там, куда вебхук не указывает. Для каждого канала, в который нужны сообщения, добавляйте отдельную запись.
Создание вебхука в Slack
Slack выдаёт входящие вебхуки через приложение Slack. По руководству Slack по входящим вебхукам:
- Создайте приложение Slack для своего рабочего пространства или откройте то, которое уже используете для уведомлений. Выберите название, понятное вашей команде, например SEO reports.
- В настройках приложения откройте раздел Incoming Webhooks и включите Activate Incoming Webhooks.
- Нажмите Add New Webhook to Workspace, выберите канал и подтвердите выбор. Для приватного канала вы должны сначала в нём состоять.
- Скопируйте новый URL из раздела Webhook URLs for Your Workspace. Он начинается с
https://hooks.slack.com/services/.
Повторите шаги 3 и 4 для каждого следующего канала: одно приложение может содержать несколько вебхуков. URL, созданный через устаревшие пользовательские интеграции Slack (custom integrations), тоже продолжает работать, хотя Slack рекомендует перейти на приложения.
Slack считает этот URL секретом: любой, у кого он есть, может публиковать сообщения в канал. Вставьте его в AutoPSEO и не оставляйте в тикетах, вики и скриншотах.
Добавление в AutoPSEO
- На странице Slack, Teams & Webhooks найдите Slack - Connected workspaces и нажмите Add to Slack. Откроется форма New channel, где в качестве получателя уже выбран Slack.
- Name: название для списков AutoPSEO, истории доставок и тестового сообщения, например
#seo-alerts. - Webhook URL: вставьте URL из Slack. Для записи Slack AutoPSEO принимает только адреса
httpsна домене slack.com и сразу сообщает, если URL не подходит. - Нажмите Add channel, затем Send test в новой строке. В течение нескольких секунд в Slack должно появиться короткое сообщение с названием записи, а AutoPSEO покажет, сколько времени Slack отвечал.
URL хранится в зашифрованном виде (AES-GCM). В списке дальше отображаются только его хост и последние символы, поэтому выбирайте названия, по которым ясно, какой канал Slack обслуживает каждая запись.
Затем задайте, что публиковать: отчёт по расписанию или оповещение. Таблица Slack - Subscriptions под списком покажет для каждого канала Slack все правила, которые туда публикуют, их расписание и состояние: активно или приостановлено.
Несколько каналов и рабочих пространств
URL вебхука принадлежит одному каналу в одном рабочем пространстве, и Slack не позволяет сообщению переопределить канал, для которого вебхук был создан. Это делает поведение предсказуемым:
- Один канал Slack, одна запись. Чтобы разделить клиентов между
#client-aи#client-b, создайте вебхук для каждого и добавьте оба. - С несколькими рабочими пространствами всё устроено так же, поскольку каждый вебхук живёт в том пространстве, где вы его создали.
- Одна запись может обслуживать много правил. Отправляйте еженедельный отчёт и оповещение о падении трафика в одну запись или держите оповещения в отдельном, более оживлённом канале.
Почему сообщение не пришло
Send test сразу показывает причину. Для сообщений по расписанию откройте Delivery history: там сохраняется ответ Slack на каждую неудачную попытку.
| Что показывает AutoPSEO | Что это значит | Что делать |
|---|---|---|
| Slack rejected the URL (no_service) | Вебхук удалён или отключён в Slack, либо в URL опечатка | Создайте новый вебхук, добавьте его, затем удалите старую запись |
| The Slack channel no longer exists, or is archived | Slack ответил channel_not_found или channel_is_archived | Создайте вебхук для канала, которым всё ещё пользуются |
| Slack is rate limiting us | Slack ответил HTTP 429 | Немного подождите, затем используйте Send now или Test rule |
| Timed out after 10 seconds | Slack не ответил вовремя | Повторите попытку позже |
| Your trial has ended | Нет активного тарифа или пробного периода | Выберите тариф; доставка по расписанию возобновится вместе с ним |
Неудавшийся отчёт по расписанию не отправляется повторно в том же периоде, поэтому после устранения причины используйте Send now. Оповещение, которое не удалось опубликовать, будет проверено снова при следующей проверке (когда запускаются оповещения).
Удаление канала Slack
Delete в строке записи удаляет сохранённый URL и, после подтверждения с указанием их количества, все правила, которые публикуют в этот канал. AutoPSEO ничего не меняет в Slack: вебхук продолжает работать, пока кто-нибудь не удалит его в приложении Slack, поэтому сделайте это и там, если URL могли видеть посторонние.