Я использую Telegram по назначению. Но иногда, опираясь на крутые возможности его Bot API, невозможно обойти стороной облегчения своей жизни. Как-то уже в блоге я писал пост про скрипты резервного копирования в Telegram, которые у нас крутятся на небольших проектах и уже несколько раз конкретно спасали наши жизни и жизни наших проектов.
Мне очень часто приходится выдергивать какие-нибудь файлы с серверов (своих и клиентских) и передавать дальше через телеграм. Например дампы тестовых БД, docker-compose файлы и многое другое. Долгое время я качал файлы через winscp и перекладывал в телеграм кому надо. Но когда файл большой это неудобно — пока скачаешь, пока закинешь.
Небольшая история
С клиентом покупали https сертификат ему на проект и надо было передавать с сервера csr файл, для последующей его обработки. Сервер находится за vpn, ходить напрямую через WinSCP было неудобно и лень. И я решил попробовать отправить файл через телеграм сам себе. Сработало:)
Также, пару месяцев назад я таким образом передавал дамп тестовой базы данных новому разработчику и понял что способ реально рабочий и начал пользоваться им регулярно. Я даже сначала начал писать бинарник на Go, но на полпути понял, что вопрос решается простым BASH скриптом на 5 строк с использованием curl. Сам скрипт можно увидеть ниже.
#getChatId
# написать что-либо в бот чат, потом запустить:
curl https://api.telegram.org/bot$TOKEN/getUpdates | grep -Po '"from":{"id":.+?,' | grep -Eo "[0-9]+"
# https://gist.github.com/SanariSan/4c7cca1aef10dfe0e27e55cfd97e9a53
Send text messages
curl -X POST -H "Content-Type:multipart/form-data" -F chat_id=$CHAT_ID -F text="hello world!!!" "https://api.telegram.org/bot$TOKEN/sendMessage"
Добавить комментарий