anyfix Posted January 19, 2023 · Report post Есть у меня один прекрасный сервер, который имеет характерную особенность – зависать. В данной статье мы не будем рассматривать очевидные идеи по типу того, что не плохо бы найти причину этого зависания … Я подумал, что было бы очень хорошо иметь оперативное уведомление о том что сервер более не доступен. Поехали! Создаем в телеграмме нового бота. Отправляем контакту BotFather команду /newbot (кстати там можно и другие настройки делать, менять имя, устанавливать аватару и т.д.) Задаем отображаемое имя бота в произвольном формате. Затем, задаем юзернейм для бота. Он должен быть без пробелов и содержать _bot в конце. После этого BotFather отрапортует об успешном создании бота, и выдаст уникальный идентификатор (токен) для работы с ботом по API. Выглядит он примерно вот так 111111111:AAEqbGdOUtAA7GK1TJSAEdy3vIUFAuE68vk Открываем браузер, и заходим по адресу https://api.telegram.org/botТОКЕН/getMe В ответ получаем информацию в JSON формате {“ok”:true,”result”:{“id”:111111111,”is_bot”:true,”first_name”:”vium”,”username”:”vium_bot”}} Отлично! Двигаемся далее Пишем нашему созданному боту команду /start. После любое сообщение, например test. Открываем в браузере адрес https://api.telegram.org/botТОКЕН/getUpdates {“ok”:true,”result”:[{“update_id”:31449293, “message”:{“message_id”:2,”from”:{“id”:311840248,”is_bot”:false,”first_name”:”Aleksey”,”last_name”:”Bear”,”username”:”bearscience”,”language_code”:”ru”},”chat”:{“id”:311840248,”first_name”:”Aleksey”,”last_name”:”Bear”,”username”:”bear”,”type”:”private”},”date”:1559536164,”text”:”\u0432\u0430″}}]} Из этого ответа берем ID, я выделил их … Теперь если вы в браузере откроете строку https://api.telegram.org/botТОКЕН/sendMessage?chat_id=ID&text=MESSAGE то сообщение будет доставлено в ваш бот. (Я надеюсь понятно что нужно вставить свой токен, ID и текст сообщения). Касаемо уведомления с mikrotik, то тут все просто: Заходим в Tools>Netwatch. Добавляем там цель для пинга. Там же можем видеть две вкладки Up & Down. Это скрипты, которые исполняются при событии когда хост поднялся или упал. Вставляем уже полученную строку для отправки сообщения туда в виде tool fetch url=” https://api.telegram.org/botТОКЕН/sendMessage?chat_id=ID&text=Server alive!” dst-path=log.txt Вот собственно и всё. Вместо того чтобы отремонтировать сервер, я просто сделал костыль и подставил под сервер. Следующим этапом будет автоматическая перезагрузка при зависании :-DDD p.s. данная информация документирована на сайте телеграмм, и я потратил всего 10-15 минут для реализации данной задачи. Будьте здоровы! Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
sheft Posted January 19, 2023 · Report post тоесть это нужно иметь и "висявый" сервер и ещё микротик для его мониторинга? а если висявый сервер повесит именно http-сервер, но по пингу будет доступен, что тогда? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Saab95 Posted January 19, 2023 · Report post У нормального сервера есть система удаленного управления, и через нее можно получать всю необходимую информацию. Как и перезагрузить или включить сервер снова. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...