from docxtpl import DocxTemplate
import telebot
from telebot import types
API_TOKEN = ' '
bot = telebot.TeleBot(API_TOKEN)
@bot.message_handler(commands=['start'])
def main(message):
msg = bot.send_message(message.chat.id, 'Этот бот поможет вам быстро заполнить ПКО! Введите ФИО плательщика:')
bot.register_next_step_handler(msg, fio_step)
def fio_step(message):
user_info = {}
user_info['name'] = message.text
msg = bot.send_message(message.chat.id, 'Введите сумму оплаты')
bot.register_next_step_handler(msg, sum_step, user_info)
def sum_step(message, user_info):
user_info['sum'] = message.text
msg = bot.send_message(message.chat.id, 'Введите основание платежа')
bot.register_next_step_handler(msg, ocn_step, user_info)
def ocn_step(message, user_info):
user_info['ocn'] = message.text
msg = bot.send_message(message.chat.id, 'Введите день платежа')
bot.register_next_step_handler(msg, day_step, user_info)
def day_step(message, user_info):
user_info['day'] = message.text
msg = bot.send_message(message.chat.id, 'Введите месяц платежа')
bot.register_next_step_handler(msg, mes_step, user_info)
def mes_step(message, user_info):
user_info['mes'] = message.text
msg = bot.send_message(message.chat.id, 'Введите год платежа')
bot.register_next_step_handler(msg, year_step, user_info)
def year_step(message, user_info):
user_info['year'] = message.text
msg = bot.send_message(message.chat.id, 'Введите номер документа')
bot.register_next_step_handler(msg, mumbr_step, user_info)
def mumbr_step(message, user_info):
user_info['numbr'] = message.text
msg = bot.send_message(message.chat.id, 'Введите название организации')
bot.register_next_step_handler(msg, orga_step, user_info)
def orga_step(message, user_info):
user_info['orga'] = message.text
msg = bot.send_message(message.chat.id, 'Введите сумму оплаты прописью')
bot.register_next_step_handler(msg, propis_step, user_info)
def propis_step(message, user_info):
user_info['propisi'] = message.text
doc = DocxTemplate("pko.docx")
context = { 'org' : orga_step,
'number' : mumbr_step,
'day': day_step,
'mes': mes_step,
'year': year_step,
'fio': 'name',
'ocnovanie': ocn_step,
'symmarub': sum_step,
'propis': propis_step,
'vtom': '',
}
doc.render(context)
doc.save("шаблон-final1.docx")
bot.polling()
Пытаюсь заставить бота заполнять word файл получая данные из телеги. При запуске бот сразу выдает готовый файл а не ждет заполнения от юзера(