Skip to content

Latest commit

 

History

History
219 lines (144 loc) · 8.71 KB

File metadata and controls

219 lines (144 loc) · 8.71 KB

Notify

Плагин позволяет настроить уведомления для множества сервисов.

Функция / Возможность Плагин Notify Moonraker Telegram Bot
Требует внешний сервер +
Удалённое управление принтером – (можно через zmod.link) +
Создание таймлапса – (можно через плагин timelapse) +
Информация о событиях печати (старт, пауза, отмена, окончание) + +
Информация от датчика филамента + +
Информация о прогрессе печати в процентах + +
Работа с несколькими принтерами через одного бота +
Информировиние через другие сервисы + -
Splooman - +

Пояснение к таблице:

  • + — функция поддерживается или реализована.
  • — функция отсутствует или не поддерживается напрямую.

Установка

Чтобы использовать этот плагин для вашего Flashforge AD5X/AD5M/AD5M Pro

  1. Установите zMod: https://github.com/ghzserg/zmod
  2. Обновите zMod
  3. Выполните команду: ENABLE_PLUGIN name=notify

Удаление

Выполните команду: DISABLE_PLUGIN name=notify

Настройка

Для настройки необходимо:

  • Прописать url в mod_data/notify.txt
  • Прописать name в mod_data/notify.txt
  • Вызывать макрос UPDATE_NOTIFY

Чтобы вызвать уведомление в вашем gcod, нужно использовать макрос _NOTIFY

У него 2 параметра:

  • PHOTO: 1 - делайть снимок(по умолчанию), 0 - не делать снимок
  • MSG: Сообщение которое будет отправлоено

Приммер: _NOTIFY MSG="Hello" PHOTO=0

Будет отправлено сообщение Hello без фотографии.

Если вы хотите получать уведомления о печати, каждые 5 процентов печати, то нужно выполнить следующий макрос:

SAVE_VARIABLE VARIABLE=notify_percent VALUE=5, значение 5, можно заменить на число от 1 до 99

Список вариантов url можно получить на странице Apprise

Управление уведомлениями

Принтер отправляет 2 типа уведомлений

Moonraker

Чтобы их выключить, нужно переопределить в mod_data/user.moonraker.conf

  • Старт печати

    [notifier print_start]
    events: none
    
  • Завершение печати

    [notifier print_complete]
    events: none
    
  • Ошибка печати

    [notifier print_error]
    events: none
    
  • Отмена печати

    [notifier print_cancelled]
    events: none
    
  • Пауза

    [notifier print_paused]
    events: none
    
  • Возобнавление печати

    [notifier print_resumed]
    events: none
    

zmod

Чтобы их выключить, нужно:

  • При включении принтера

    SAVE_VARIABLE VARIABLE=notify_on VALUE=0

  • При окончании печати (вызывается из END_PRINT)

    SAVE_VARIABLE VARIABLE=notify_end VALUE=0

  • При сработке датчиков филамента

    SAVE_VARIABLE VARIABLE=notify_filament VALUE=0

Пример настройки Telegram

Регистрация бота

Как зарегистрировать свой бот

  1. Идете к @BotFather
  2. /newbot
  3. Вводите любое имя, которое вам нравится
  4. Вводите имя бота ff5msuper_bot - обязательно _bot в конце.
  5. Получаете длинный ID - его нужно будет прописать в mod_data/notify.txt заменив {bottoken} (например 1234567890:AAAAAAAABBBBBBBBBBCCCCCCCDDDEEEEEEE)
  6. Найдите в Telegram бота, которого вы создали и напишите ему любое сообщение

Получить ChatID

  1. Идете к @userinfobot
  2. /start
  3. Получаете ID - его нужно будет прописать в mod_data/notify.txt заменив {ChatID} (например 123456789)

Прописать имя принтера

  1. Откройте файл mod_data/notify.txt
  2. Найдите или добавьте строку name:
  3. Замените {printer_name} или добавьте имя вашего принтера

Финал

  1. В файле mod_data/notify.txt было:

    [notify]
    url: tgram://{bottoken}/{ChatID}
    name: {printer_name}
    

    Стало:

    [notify]
    url: tgram://1234567890:AAAAAAAABBBBBBBBBBCCCCCCCDDDEEEEEEE/123456789
    name: my_ad5x
    

    Не удаляйте url: , даже если вы настраиваете не телеграм. Иначе будут появляться ошибки.

  2. В консоли Fluidd/Moonraker запустите макрос UPDATE_NOTIFY

  3. Дождитесь перезагрузки

  4. Отправить уведомление можно макросом _NOTIFY MSG=Test из консоли Fluidd/Mainsail

Пример настройки Matrix

Создание бота

Вам необходимо создать бота через Synapse Admin или его форк от etke.cc. Если ваш Matrix сервер не Synapse, удачи в поисках 🙃

Создание комнаты

  1. Вам необходимо создать комнату от своего аккаунта или аккаунта бота (и принять приглашение), вы оба должны быть в одном чате.

  2. Вам нужно получить ID комнта, обычно он написан в конце ссылки веб-клиента (напр. https://example.org/#/rooms/!opaque_id:example.org) или его можно посмотреть в Synapse Admin из прошлого шага.
    ID комнаты должен выглядеть вот так !opaque_id:example.org

У нас есть 2 варианта

Мы можем использовать логин/пароль или токен доступа (полезно для пользователей с OIDC)

Получаем токен доступа (необязательно)

Выполните эту команду в терминале

curl -XPOST -d '{"type":"m.login.password", "user":"your_username", "password":"your_password"}' "https://your-matrix-server.com/_matrix/client/r0/login"

она покажет ваш код доступа

Финал

  1. В файле mod_data/notify.txt, если вы используете логин/пароль всё должно выглядеть вот так:

    [notify]
    url: matrixs://user:pass@example.org/{ID вашей комнаты}
    name: my_ad5x
    

    или так, если вы используете токен доступа:

    [notify]
    url: matrixs://token@example.org/{ID вашей комнаты}
    name: my_ad5x
    
  2. В консоли Fluidd/Moonraker запустите макрос UPDATE_NOTIFY

  3. Дождитесь перезагрузки, и, если вы всё сделали правильно, то вы получите сообщение что принтер включился.

  4. Отправить уведомление можно макросом _NOTIFY MSG=Test из консоли Fluidd/Mainsail