Lotfull
11/30/2019 - 1:59 PM

Telegram Bot Primitive setup

Пример простого телеграм бота для отправки уведомлений:

from telegram import Bot
from telegram.ext import Updater, CommandHandler, MessageHandler, Filters

def send(text):
    from telegram import Bot, utils
    from telegram.ext import Updater, CommandHandler, MessageHandler, Filters
    chat_id = 9999999 # Your chat id
    token = 'xxxxxxxxx:XXXXXXXXXXXXXXXXXXXXXXXXXX'
    pp = utils.request.Request(proxy_url='http://151.253.165.70:8080')
    bot = Bot(token=token, request=pp)
    bot.send_message(chat_id, text=text, disable_web_page_preview=True)

Пример запуска простого телеграм бота:

chats = set()
token = 'TELEGRAM_TOKEN'
bot = Bot(token=token)

def start(update, context):
    chats.add(update.message.chat_id)
    context.bot.send_message(chat_id=update.message.chat_id, text="Привет")


def echo(update, context):
    context.bot.send_message(chat_id=update.message.chat_id, text=f"Нет команды: {update.message.text}")


def run_updater():
    updater = Updater(token=token, use_context=True)
    dispatcher = updater.dispatcher

    start_handler = CommandHandler('start', start)
    dispatcher.add_handler(start_handler)

    echo_handler = MessageHandler(Filters.text, echo)
    dispatcher.add_handler(echo_handler)

    updater.start_polling()
    
    
def send_everyone(text, silent=False):
    for chat_id in chats:
        bot.send_message(chat_id=chat_id, text=text, disable_web_page_preview=True,
                         disable_notification=silent)
    
run_updater()
    
    bot.send_message(chat_id, text=text, disable_web_page_preview=True)
    ```