Недавно потребовалось мне для уведомлений о различных операциях автоматизации — отправлять сообщения в телеграмм. Поэтому по быстрому накидал скрипт.
Скрипт написан на bash и не имеет никаких зависимостей кроме curl.
На вход скрипту передается два параметра:
- текст
(параметре -t или --text)
- путь до файла
(параметр -f или --file)
.
Если какой-то параметр не указан, то сообщение данного типа не будет отправлено. Если указаны оба параметра — то сначала отправляется текстовое сообщение, затем отправляется файл.
Как создать бота, получить его токен, узнать CHAT_ID чата с этим ботом — не составит труда найти в интернете.
Исходник скрипта под катом.
#!/bin/bash # Set the API token and chat ID API_TOKEN="5235xxxxx:AAGBdddddddd_xxxxx" CHAT_ID="11xxxxxxx" while [[ "$#" -gt 0 ]] do case $1 in -t|--text) MESSAGE="$2"; shift;; -f|--file) DOC="$2"; shift;; esac shift done # Use the curl command to send the message if [ ! -z "$MESSAGE" ] then curl -s -X POST https://api.telegram.org/bot$API_TOKEN/sendMessage -d chat_id=$CHAT_ID -d text="$MESSAGE" fi if [ ! -z "$DOC" ] then curl -F chat_id=$CHAT_ID -F document=@"$DOC" https://api.telegram.org/bot$API_TOKEN/sendDocument fi
Поделиться ссылкой: