-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathupdate.py
56 lines (40 loc) · 1.88 KB
/
update.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
from telegram.ext import Application, MessageHandler, filters
from telegram import Update
from pprint import pprint
from dotenv import load_dotenv
import os
# подгружаем переменные окружения
load_dotenv()
# токен бота
TOKEN = os.getenv('TG_TOKEN')
# функция-обработчик текстовых сообщений
async def text(update: Update, context):
# выведем в консоль содержимое update
print(update)
print()
pprint(update.to_dict())
print()
# update.message - новое входящее сообщение любого типа - текст, фотография, наклейка и т. д.
print(update.message.text)
print(update.message.message_id)
print(update.message.date)
print(update.message.from_user.first_name)
print(update.message.from_user.id)
print()
# update.callback_query - новый входящий запрос обратного вызова (используется при нажатии кнопок)
print(update.callback_query)
print()
# update.update_id - уникальный id входящего сообщения
print(update.update_id)
await update.message.reply_text(f'Текст сообщения: {update.message.text}')
def main():
# создаем приложение и передаем в него токен
application = Application.builder().token(TOKEN).build()
print('Бот запущен...')
# добавляем обработчик текстовых сообщений
application.add_handler(MessageHandler(filters.TEXT, text))
# запускаем бота (нажать Ctrl-C для остановки бота)
application.run_polling()
print('Бот остановлен')
if __name__ == "__main__":
main()