Перейти к содержимому

Оповещения

Настройка

Оповещение отправляет сообщение в Discord или по электронной почте, когда что-то происходит: запрос ждёт, фильм появился, проверка исправности нашла сбой. Вам нужно право Change settings (менять настройки).

  1. Откройте Settings > Alerts (Настройки > Оповещения) и нажмите Add an Alert (добавить Оповещение).
  2. Задайте Name (название) и выберите Kind (вид): Discord или электронная почта.
  3. Заполните поля этого вида (см. Виды).
  4. В разделе When to send (когда отправлять) снимите флажки с моментов, которые вам не нужны. Сначала отмечены все; All of these (все эти) и None of these (ни один из этих) действуют на целую группу.
  5. Оставьте Send messages (отправлять сообщения) включённым и нажмите Save (сохранить).
  6. Нажмите Send a test (отправить пробное) на карточке. Сообщение придёт, а на карточке появится Last sent (последняя отправка).

В Discord откройте настройки канала, затем Integrations > Webhooks (Интеграции > Вебхуки) и скопируйте ссылку. Вставьте её в Discord link (ссылка Discord); она начинается с https://discord.com/. Людей, которые добавили в свою учётную запись ID пользователя Discord, упоминают в сообщениях об их запросах.

Поле Что ввести
Mail server (почтовый сервер), Port (порт) Ваш почтовый сервер
Security (защита) STARTTLS (порт 587), TLS (порт 465) или None (нет). None — только для почтового сервера в вашей собственной сети
From address (адрес отправителя) Адрес отправителя
Mail username (имя пользователя почты), Mail password (пароль почты) Почтовая учётная запись
Staff addresses (адреса администрации) Один или несколько, через запятую

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

Telegram, ntfy, Gotify, Pushover и вебхуки в этой версии придержаны. См. Придержанные функции.

Момент Кому Когда
New request (новый запрос) Администрации Фильм, сериал или исполнитель ждёт одобрения
Approved (одобрен) Авторам запросов Их запрос одобрили
Declined (отклонён) Авторам запросов Отклонён, с вашей заметкой
Ready (готово) Авторам запросов Файлы в Медиатеке
New episodes (новые серии) Авторам запросов и подписчикам Не больше 1 на сериал в час. Каждый может отключить их для себя
New albums (новые альбомы) Подписчикам исполнителя Не больше 1 на исполнителя в час
Problem reported (сообщили о проблеме) Администрации Кто-то сообщил о проблеме с тайтлом. Сообщения лежат в /requests/reports
Problem fixed (проблема решена) Тому, кто сообщил С вашим ответом
Sent to download (отправлено на скачивание) Администрации Релиз ушёл в загрузчик
In the Library (в Медиатеке) Администрации Файлы размещены, в том числе копия получше
Renamed (переименовано) Администрации Файлы получили новые имена
Added (добавлено) Администрации Тайтл добавили вручную, из списка или из запроса
Deleted (удалено) Администрации Фильм, сериал, сезон или серии ушли из Медиатеки
Health (исправность) Администрации Проверка исправности нашла сбой или сбой устранён
Needs a decision (требует решения) Администрации Загрузке или импорту нужны вы

Под списком Season packs (паки сезонов) решает, что отправляет одна загрузка с множеством серий: One Alert for the pack (одно Оповещение на пак), со строкой на каждую серию, или One Alert per episode (одно Оповещение на серию).

По умолчанию выключен. Пока он выключен, Оповещения Discord идут только на discord.com, а остальные виды — только на серверы в интернете; ссылки на этот компьютер или вашу домашнюю сеть отклоняются, даже после разрешения имени в адрес. Включите его для почтового сервера или получателя у вас дома. По перенаправлениям HolyArrs не переходит никогда.

Поставить Оповещение на паузу

Ссылка на «Поставить Оповещение на паузу»

Снимите флажок Send messages. На карточке появится Off (выключено), а Оповещение останется.

Хранятся зашифрованными и после этого показываются как Stored (сохранено). Оставьте поле пустым, чтобы сохранить прежнее значение. Если направить Оповещение на другой сервер, секрет придётся ввести заново; сохранённый секрет никогда не уходит на новое место.

Признак проблемы:

Paste the Discord link (вставьте ссылку Discord)

Причина: ссылка не начинается с https://discord.com/. Решение: скопируйте ссылку вебхука ещё раз. Для похожего на Discord сервера у вас дома включите Reach the local network (доступ к локальной сети).

Признак проблемы:

Points to the local network, which this Alert may not reach (ведёт в локальную сеть, куда этому Оповещению нельзя)

Причина: сервер находится на этом компьютере или в вашей домашней сети. Решение: включите Reach the local network.

Признак проблемы: Last try failed (последняя попытка не удалась) с ответом 401 или 404. Причина: неверная ссылка или токен. Такие отправки не повторяются. Решение: исправьте и нажмите Send a test.

Признак проблемы: автор запроса ничего не получил. Причина: в его учётной записи нет адреса электронной почты или ID пользователя Discord, с момента снят флажок или он отключил новые серии. Решение: проверьте эти три вещи.

Повторные попытки

После тайм-аута, ответа с просьбой замедлиться или ошибки сервера отправка повторяется через 5 с, 30 с и 2 мин. Если сервер просит подождать дольше, HolyArrs ждёт, но не больше 5 мин. После отказа, например из-за неверной ссылки, повторов нет. Каждый сбой добавляет в Историю строку «Alert could not be sent» (Оповещение не удалось отправить).

Придержанные виды и их поля

Показываются только при включённом переключателе alert_channels_more.

Вид Поля
Telegram Bot token (токен бота) от @BotFather, Chat ID (ID чата: ID пользователя, группы или канала либо @channel). Сначала напишите боту или добавьте его в группу
ntfy Server address (адрес сервера; пустое поле означает ntfy.sh), Topic (тема), необязательный Access token (токен доступа). Читать тему может любой, кто её знает
Gotify Server address, App token (токен приложения)
Pushover User key (ключ пользователя; ключи групп тоже подходят), App token
Вебхук (JSON) Webhook link (ссылка вебхука), необязательный Secret (секрет), What the secret does (что делает секрет)
Что получает вебхук

Один POST на сообщение, Content-Type: application/json, с такими заголовками:

Заголовок Значение
X-HolyArrs-Event Момент, например import или test
X-HolyArrs-Delivery Случайный ID этого сообщения
X-HolyArrs-Timestamp С Signs each message (подписывает каждое сообщение): секунды с 1970 года
X-HolyArrs-Signature С Signs each message: sha256= плюс HMAC-SHA256 в шестнадцатеричном виде от <timestamp>.<delivery>.<body>, ключ — ваш секрет
Authorization С Is sent as a bearer token (отправляется как bearer-токен): Bearer <secret>

С Nothing (ничего) секрет не отправляется. Если используете подпись, отклоняйте старые метки времени и ID доставки, которые вы уже видели, чтобы скопированное сообщение нельзя было отправить повторно.

{
"moment": "import",
"event_kind": "import_done",
"subject": "In the Library: Arrival (2016)",
"text": "Import done: 1 placed by hardlink",
"at": "2025-01-01T18:04:11Z",
"movie": { "id": 12, "name": "Arrival", "year": 2016, "tmdb": "329865", "imdb": "tt2543164" },
"data": { "from": "/downloads/Arrival.2016.1080p" }
}

Другие поля появляются, когда они к месту: test, show и episodes, artist и tracks, report, people. В people лежат имена авторов запросов, но никогда не адреса. В data лежат причины и пути из строки Истории, которая стоит за сообщением. Любой ответ 2xx считается доставкой.

HolyArrs бесплатен. Если он сэкономил вам время, поставьте звезду на GitHub, станьте спонсором или угостите меня кофе.