Telegram рассылка из роботов для Os Engine.

Telegram рассылка из роботов для Os Engine.

В сервис логирования OsEngine добавлен функционал отправки сообщений в Телеграм.

Там же добавлена возможность принимать и обрабатывать команды от своего Телеграм-бота.

 

1. Создание бота в Telegram для приема сообщений.

Нам будет нужен бот в самом мессенджере Телеграм. Для его создания используем BotFather – это официальный бот мессенджера, который позволяет создавать ботов и управлять ими.

Ищем его в поиске Телеграм:

Открываем его и начинаем с ним чат (команда “/start” или Запустить):

BotFather отвечает списком команд, нам нужна команда – “/newbot” – вводим ее. В ответ предлагается выбрать имя нашему новому боту. Придумываем и вводим, например, “newOSAbot”.

Далее предлагается выбрать имя пользователя, оканчивающееся на “bot”. Делаем его, просто приписав в конец то, что нужно - “newOSAbot_bot”.

Вот так в итоге выглядит диалог создания бота:

BotFather сообщил нам об успешном создании бота и выдал Токен, который нужно куда-то сохранить. Он нам будет нужен для работы.

При необходимости созданных в BotFather ботов можно настраивать – добавлять описание, команды, устанавливать аватар и прочее.

Далее нам нужно узнать свой Telegram ID. Для этого можно использовать вот этого бота: https://t.me/userinfobot

Запускаем бота, и он выдает нам в ответ ID, сохраняем его рядом с Токеном.

Вот как это выглядит:

Давайте теперь проверим нашего вновь созданного бота. Вводим в поиске Телеграм имя бота (newOSAbot_bot) и запускаем его. Проверить отправку ему сообщений можно в браузере. Для этого в адрес ("https://api.telegram.org/bot + Token + /sendMessage?chat_id= + ID + &text=Hello!") надо вставить наши Токен и ID:

Если все правильно, то в чат с ботом придет приветственное сообщение:

Впоследствии все уведомления от робота OsEngine будут приходить сюда же.

 

2. Пример робота в OsEngine.

Робот пример находится здесь:

Ссылка на исходный код на ГитХаб:   https://github.com/AlexWan/OsEngine

 

3. Подключаем робота.

 

Даем боту имя, выбираем ParabolicSarTrade, нажимаем «Accept».

Открываем отдельное окно робота и жмём дважды ЛКМ на таблице с бот-логом:

Откроется окно:

На вкладке Newsletter настраиваем Telegram server:

1. Выбираем RegimeOn;

2. Отмечаем галочками какой тип данных мы хотим получать.

3. Нажимаем Configure Telegram.

4. 

a. Заполняем Bot token;

b. Заполняем Chat ID;

c. Ставим галочку, если хотим принимать команды от телеграм-бота;

d. Нажимаем «Accept».

5. Нажимаем кнопку «Accept» пункт 4 на предыдущем окне.

Для каждого бота таким же образом выполняем настройки принимаемых сообщений.

Ниже пример работы бота с включенными командами.

При снятой галочке «Processing Command from Telegram» кнопки команд в телеграм-боте отображаться не будут.

Для того, чтобы иметь возможность принимать и обрабатывать команды, нужно в конструкторе вашего торгового бота подписаться на событие TelegramCommandEvent.

Приватное поле _lastRegime служит для запоминания состояния бота перед его отключением.

В приватном методе TelegramCommandHandler осуществляется обработка поступивших команд.

В данный момент это – StopAllBots, StartAllBots, CancelAllActiveOrders и GetStatus.

Логику обработки команд определяете вы сами. Выше простейший пример использования.

В остальных местах тип сообщений остается обычным.

 

4. Рассылка из Коннекторов.

Точно также настраивается отправка сообщений из лога подключений:

Включаем те типы сообщений, которые хотим видеть в телеграмме:

После чего лог сервера идёт в телеграмм.

Получили лог в OsEngine:

Получили лог в Телеграмм:

Сообщения об ошибках выделяются подчеркиванием.

Удачных алгоритмов!

Поддержка OsEngine: https://t.me/osengine_official_support

19:53
228

Комментарии

Нет комментариев. Ваш будет первым!