TaipowerToSlack — это инструмент, который получает «сегодняшнюю информацию о питании» от Taipower и отправляет данные в назначенный канал Slack, что позволяет пользователям легко отслеживать состояние электроснабжения Тайваня.
Страница Taipower «Информация о сегодняшней энергетике»:
Обратите внимание, что это в первую очередь демонстрация сценария оболочки с кодом, который может быть менее элегантным, и некоторыми жестко запрограммированными значениями.
Слабый скриншот:
Скриншот терминала:
Подробную информацию о том, как получить URL-адрес входящего веб-перехватчика для вашего канала Slack, см. в документации Slack.
Клонируем репозиторий:
git clone https://github.com/PeterDaveHello/TaipowerToSlack
Или загрузите сценарий run.sh напрямую и сделайте его исполняемым:
curl https://github.com/PeterDaveHello/TaipowerToSlack/raw/master/run.sh -o /path/to/ TaipowerToSlack /run.sh
chmod +x /path/to/ TaipowerToSlack /run.sh
Перейдите в каталог, содержащий сценарий run.sh
Установите переменную SLACK_HOOK
в сценарии оболочки или передайте ее при запуске сценария:
SLACK_HOOK=https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX ./run.sh
Результат должен отобразиться на вашем канале Slack, как показано на скриншоте.
Чтобы включить эту опцию, вы можете либо установить переменные среды STATELESS
и ONLY_POST_ON_STATUS_CHANGE
при запуске сценария, либо изменить их непосредственно в сценарии run.sh
:
Передайте переменные при запуске скрипта:
STATELESS=false ONLY_POST_ON_STATUS_CHANGE=true ./run.sh
Или измените скрипт run.sh
:
STATELESS= " false "
ONLY_POST_ON_STATUS_CHANGE= " true "
В любой конфигурации скрипт будет использовать файл ~/.taipower.status
для хранения статуса и отправлять сообщение в Slack только при изменении статуса.
jq
: для анализа данных JSONcurl
: для получения данных JSON из API Taipower.bash
: для запуска сценария оболочкиmktemp
: для создания временных файловbc
: для расчета процентов на основе данных Если какие-либо из этих инструментов отсутствуют, их обычно можно установить с помощью менеджера пакетов вашей системы (например, apt
, yum
или pacman
).
Этот проект выпущен под лицензией WTFPL v2.