-
Notifications
You must be signed in to change notification settings - Fork 0
/
run.py
72 lines (60 loc) · 3.55 KB
/
run.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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
import requests
import telebot
PRIVAT_API = 'https://api.privatbank.ua/p24api/pubinfo?json&exchange&coursid=5'
response = requests.get(PRIVAT_API).json()[1]
response1 = requests.get(PRIVAT_API).json()[0]
BOT_TOKEN = 'PUT HERE YOUR TOKEN FROM BOT_FATHER'
bot = telebot.TeleBot(BOT_TOKEN)
@bot.message_handler(commands=['start'])
def hello_handler(message):
chat_id = message.chat.id
bot.send_message(chat_id, 'Добрый день! Используйте команды в кавычках для управления ботом')
bot.send_message(chat_id, 'Курс доллара на сегодня: {} / {}.'
' Введите текст "Купить доллары" или "Продать доллары" для калькуляции валют'.format(
response['buy'] , response['sale']
))
bot.send_message(chat_id, 'Курс евро на сегодня: {} / {}.'
' Введите текст "Купить евро" или "Продать евро" для калькуляции валют'.format(
response1['buy'], response1['sale']
))
@bot.message_handler(content_types=['text'])
def handler_text(message):
text = message.text.lower()
print('Text from user - ' , text)
if text == 'купить доллары':
msg = bot.send_message(message.chat.id , 'Введите сумму для покупки в $ (только цифры)')
bot.register_next_step_handler(msg , usd , type_="sale")
elif text == 'продать доллары':
msg = bot.send_message(message.chat.id , 'Введите сумму для продажи в $ (только цифры)')
bot.register_next_step_handler(msg , usd , type_="buy")
elif text == 'купить евро':
msg = bot.send_message(message.chat.id, 'Введите сумму для покупки в € (только цифры)')
bot.register_next_step_handler(msg, eur, type_="sale")
elif text == 'продать евро':
msg = bot.send_message(message.chat.id, 'Введите сумму для продажи в € (только цифры)')
bot.register_next_step_handler(msg, eur, type_="buy")
elif text == 'пока':
msg = bot.send_message(message.chat.id , 'Спасибо за обращение!')
else:
msg = bot.send_message(message.chat.id, 'Я Вас не понял, пожалуйста уточните свое обращение! Для управления используйте следующие команды: "/start" "Купить доллары" "Продать доллары" "Купить евро" "Продать евро" "Пока"')
def usd(message, **kwargs):
type_ = kwargs.get('type_')
print(type_, 'type operation')
value = float(message.text)
total_money = float(response[type_]) * value
if type_ == 'sale':
bot.send_message(message.chat.id, "Вам нужно {} грн".format(total_money))
elif type_ == 'buy':
bot.send_message(message.chat.id, "Вы получите {} грн".format(total_money))
def eur(message, **kwargs):
type_ = kwargs.get('type_')
print(type_, 'type operation')
value = float(message.text)
total_money = float(response1[type_]) * value
if type_ == 'sale':
bot.send_message(message.chat.id, "Вам нужно {} грн".format(total_money))
elif type_ == 'buy':
bot.send_message(message.chat.id, "Вы получите {} грн".format(total_money))
bot.polling()
print(response)
print(response1)