# Уведомления в Rocket.Chat

Входящий вебхук в Rocket.Chat и подключение в Statuser — пошагово со скриншотами

> Индекс всей документации в markdown: https://statuser.cloud/llms.txt — там перечислены остальные статьи. Всё одним файлом: https://statuser.cloud/llms-full.txt. Документация API: https://statuser.cloud/api-reference.md

## Доступность по тарифам

Доступно в тарифе Team

| Функция | Free | Pro | Team |
| --- | --- | --- | --- |
| Уведомления в Rocket.Chat | нет | нет | да |

Сравнение тарифов: https://statuser.cloud/pricing

## Через API и MCP

Описанное в статье можно сделать программно — запросом к публичному API или через MCP-сервер Statuser, который работает поверх того же API. Понадобится API-ключ, создать его можно на любом тарифе; ограничения тарифа в API те же, что в интерфейсе.

- Документация API: https://statuser.cloud/api-reference (машиночитаемо: https://statuser.cloud/api-reference.md)
- MCP-сервер: https://github.com/statuser-cloud/mcp

---

Statuser присылает уведомления в канал Rocket.Chat через входящий вебхук. Настройка займёт несколько минут: создайте вебхук в Rocket.Chat, вставьте его адрес в Statuser — и уведомления начнут приходить в канал.

## Что понадобится

- Права администратора Rocket.Chat: входящие вебхуки заводят в разделе администрирования.
- Сервер Rocket.Chat, доступный из интернета: Statuser отправляет сообщения снаружи. Если Rocket.Chat во внутренней сети, хватит прокси, который открывает наружу только вебхуки, — [как его настроить](#если-rocketchat-во-внутренней-сети).

## Шаг 1. Создайте входящий вебхук

Нажмите значок шестерёнки на верхней панели → **Рабочее пространство** → **Интеграции** и нажмите **Новый** — откроется форма входящего вебхука. Заполните её:

- **Включено** — оставьте включённым.
- **Имя** — `Statuser`, чтобы вебхук было легко узнать в списке.
- **Опубликовать на канале** — куда будут приходить уведомления, например `#alerts`.
- **Отправить от имени** — `rocket.cat`. Этот бот есть на любом сервере Rocket.Chat, и сообщения от него придут с именем и значком Statuser.
- **Псевдоним**, **URL-адрес Аватара** и **Эмодзи** оставьте пустыми: имя и значок задаёт Statuser.

![Форма «Входящая интеграция WebHook» в Rocket.Chat: включено, имя Statuser, канал #alerts, отправитель rocket.cat](https://statuser.cloud/docs/screens/rocketchat-notification-webhook-form-light.png)

Нажмите **Сохранить** внизу страницы.

## Шаг 2. Скопируйте адрес вебхука

После сохранения Rocket.Chat покажет раздел **Инструкции** с полем **URL Webhook**. Скопируйте адрес кнопкой справа от него.

![Поле «URL Webhook» в разделе «Инструкции»: адрес вида https://rocketchat.example.com/hooks/… и кнопка копирования](https://statuser.cloud/docs/screens/rocketchat-notification-webhook-url-light.png)

> Адрес вебхука работает как пароль: токен лежит прямо в нём, и любой, кто его
> знает, может писать в канал. Не пересылайте его в открытых чатах.

## Шаг 3. Подключите Rocket.Chat в Statuser

1. Откройте **Настройки аккаунта** → [Уведомления](https://statuser.cloud/my/account/notifications) и нажмите **Добавить канал**.
2. Выберите **Rocket.Chat** и вставьте скопированный адрес. Подпись необязательна — она пригодится, если каналов Rocket.Chat будет несколько.
3. Нажмите **Отправить тест** — в канал придёт тестовое сообщение Statuser.
4. Нажмите **Подключить** и отметьте проекты, уведомления которых должны приходить в этот канал.

![Диалог «Добавить канал» в Statuser: выбран Rocket.Chat, в поле URL вставлен адрес входящего вебхука, кнопки «Отправить тест» и «Подключить»](https://statuser.cloud/docs/screens/rocketchat-notification-connect-light.png)

Проверить канал позже можно в любой момент: откройте меню **⋯** на его карточке в разделе [Уведомления](https://statuser.cloud/my/account/notifications) и выберите **Отправить тест**.

## Как выглядят уведомления

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

![Два сообщения Statuser в канале Rocket.Chat: «API бэкенда недоступен» и «API бэкенда снова доступен», с хостом, причиной, временем инцидента и регионами проверки](https://statuser.cloud/docs/screens/rocketchat-notification-message-light.png)

Какие события уходят в канал, настраивается в правилах уведомлений: у события можно раскрыть список каналов и выключить в нём **Rocket.Chat**. Из каких проектов — решают тумблеры каналов в настройках проекта. Подробнее — в статье [Каналы уведомлений](/docs/notification-types).

## Если Rocket.Chat во внутренней сети

Открывать в интернет весь Rocket.Chat не придётся. Statuser отправляет только запросы `POST` на путь `/hooks/` — хватит прокси на сервере с публичным адресом, который пропускает их и ничего больше. Например, в nginx:

```nginx
server {
    listen 443 ssl;
    server_name rc-hooks.example.com;
    # ssl_certificate и ssl_certificate_key — сертификат для rc-hooks.example.com

    location /hooks/ {
        limit_except POST { deny all; }
        proxy_pass http://rocketchat.internal:3000;
    }

    location / {
        return 404;
    }
}
```

В Statuser вставьте адрес вебхука, заменив в нём хост на адрес прокси: `https://rc-hooks.example.com/hooks/…`.

Прокси должен именно пересылать запросы: по редиректу Statuser не переходит. Чтобы пускать через прокси только Statuser, фильтруйте запросы по заголовку `User-Agent` — у всех наших запросов к вебхукам он одинаковый:

```text
Mozilla/5.0 (compatible; Statuser Webhook; https://statuser.cloud/)
```

Фильтр по IP здесь не сработает: в [списке адресов Statuser](/docs/statuser-user-agent-and-ips) — адреса проверок, а уведомления отправляются с других.

## Если тест не проходит

- **Сервер чата недоступен из интернета** — Rocket.Chat во внутренней сети. Откройте снаружи путь `/hooks/`, например [через прокси](#если-rocketchat-во-внутренней-сети).
- **Чат вернул HTTP 503** — вебхук выключен. Откройте его в **Интеграции** и включите **Включено**.
- **Чат вернул HTTP 500** — адрес скопирован не целиком или вебхук удалён. Скопируйте адрес заново из поля **URL Webhook**.
- **Адрес вебхука начинается с внутреннего адреса сервера** — Rocket.Chat собирает его из адреса, указанного в настройках сервера. Замените в скопированной ссылке хост на тот, по которому сервер открывается из интернета.

---

Источник: https://statuser.cloud/docs/rocketchat-notification
