Страница 1 из 1

Telegram bot и xStarter

Добавлено: Ср июл 19, 2017 11:26 am
vlad-ofset
Значит задача была простая: минимизировать работу.
Ну а поскольку пользователь не должен иметь доступ к серверу был написан телеграм бот, через который бы отправлялись задачи серверу, ну а сервер после отработки отвечал бы о успешности или неуспешности задачи. Задача представляет собой скомпилированный экзешник, экзешнику задаем переменные. О достоинствах телеграма не буду распространятся.
Что делает:
1. Робота з пакетами (работа с пакетами) - отправляем новые остатки и цены на все магазины, либо конкретный.
2. Перевірка накладних (проверка накладных) - проверяем накладные по дням, 1,2,3,4,5,6,7,10,14 дней, есть ли накладная продажи в базе.
3. Імпорт накладних (импорт накладных) - импортируем накладные, если файл накладной есть на сервере но не импортирован в базу.
4. Меню - возврат в главное меню из любого меню бота.
5. /start - стартуем бота.

База крутится на Oracle, из задачи стартера дергаем через ODBC данные из Oracle, обрабатываем, и отправляем ответ через powershell скрипт в телеграм. Powershell должен быть последним (пятый кажется), иначе кирилица кракозябрами присылается. Также есть эталонные файлы с которыми сравниваются количество накладных по дням, но вряд ли они пригодятся. У нас учетная система Альфа+, зверь редкий, я мало кого встречал, кто ее использует.

Что надо:
Сначала регистрируем бота с помощью botfather (инструкций вагон), ставим питон, с помощью pip ставим pytelegrambotapi.
Я руководствовался вот этим https://www.gitbook.com/book/groosha/te ... ns/details
Потом стартуем бота (robot.py). После отладки кода бота его можно повесить службой, будет сам стартовать, рестартовать при ошибках.

В powershell скрипте прописываем свой токен (telegram.ps1).
В robot.py тоже прописываем свой токен.
Компилируем задачи в exe, ложим в одно место.
Все пути придется поправить. По умолчанию путь Z:\Script\Telegram\
Вынести путь в переменные как-то руки не дошли, как всегда, потом, потом...

Да, собственно на основе отправки сообщений в телеграм через powershell, можно сделать любую систему оповещений.

Re: Telegram bot и xStarter

Добавлено: Сб авг 08, 2020 1:25 pm
vlad-ofset
Несколько месяцев назад перестала работать отправка из PowerShell.

Для того чтобы заработала, необходимо в файл Telegram.ps1 перед
Invoke-WebRequest

добавить
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12