bot.send_message(chat_id=chat_id,
text=response_storage.select_message(4, 17, 'question'),
reply_markup=keyboard)
def onfourth18(e):
keyboard = utils.select_keyboard("yes-no")
bot.send_message(chat_id=chat_id,
text=response_storage.select_message(4, 18, 'question'),
reply_markup=keyboard)
def onfourth19(e):
keyboard = utils.select_keyboard("yes-no")
bot.send_message(chat_id=chat_id,
text=response_storage.select_message(4, 19, 'question'),
reply_markup=keyboard)
def onfourth20(e):
keyboard = utils.select_keyboard("yes-no")
bot.send_message(chat_id=chat_id,
text=response_storage.select_message(4, 20, 'question'),
reply_markup=keyboard)
def onfourth21(e):
bot.send_message(chat_id=chat_id,
text=response_storage.select_message(4, 3, 'answer'))
if fsm.current in finals:
fsm.go_to_start()
return
def onfourth_4_20_no(e):
bot.send_message(chat_id=chat_id,
text=response_storage.select_message(4, 4, 'answer'))
if fsm.current in finals:
fsm.go_to_start()
return
def onfifth1(e):
keyboard = utils.select_keyboard("yes-no")
bot.send_message(chat_id=chat_id,
text=response_storage.select_message(5, 1, 'question'),
reply_markup=keyboard)
def onfifth1_no(e):
bot.send_message(chat_id=chat_id,
text=response_storage.select_message(5, 1, 'answer'))
if fsm.current in finals:
fsm.go_to_start()
return
def onfifth2(e):
keyboard = utils.select_keyboard("yes-no")
bot.send_message(chat_id=chat_id,
text=response_storage.select_message(5, 2, 'question'),
reply_markup=keyboard)
def onfifth2_no(e):
bot.send_message(chat_id=chat_id,
text=response_storage.select_message(5, 2, 'answer'))
if fsm.current in finals:
fsm.go_to_start()
return
def onfifth3(e):
keyboard = utils.select_keyboard("yes-no")
bot.send_message(chat_id=chat_id,
text=response_storage.select_message(5, 3, 'question'),
reply_markup=keyboard)
def onfifth4(e):
keyboard = utils.select_keyboard("yes-no")
bot.send_message(chat_id=chat_id,
text=response_storage.select_message(5, 4, 'question'),
reply_markup=keyboard)
def onfifth4_no(e):
bot.send_message(chat_id=chat_id,
text=response_storage.select_message(5, 3, 'answer'))
if fsm.current in finals:
fsm.go_to_start()
return
def onfifth5(e):
keyboard = utils.select_keyboard("yes-no")
bot.send_message(chat_id=chat_id,
text=response_storage.select_message(5, 5, 'question'),
reply_markup=keyboard)
def onfifth6(e):
keyboard = utils.select_keyboard("yes-no")
bot.send_message(chat_id=chat_id,
text=response_storage.select_message(5, 6, 'question'),
reply_markup=keyboard)
def onfifth7(e):
keyboard = utils.select_keyboard("yes-no")
bot.send_message(chat_id=chat_id,
text=response_storage.select_message(5, 7, 'question'),
reply_markup=keyboard)
def onfifth8(e):
keyboard = utils.select_keyboard("yes-no")
bot.send_message(chat_id=chat_id,
text=response_storage.select_message(5, 8, 'question'),
reply_markup=keyboard)
def onfifth9(e):
keyboard = utils.select_keyboard("yes-no")
bot.send_message(chat_id=chat_id,
text=response_storage.select_message(5, 9, 'question'),
reply_markup=keyboard)
def onfifth10(e):
keyboard = utils.select_keyboard("yes-no")
bot.send_message(chat_id=chat_id,
text=response_storage.select_message(5, 10, 'question'),
reply_markup=keyboard)
def onfifth11(e):
keyboard = utils.select_keyboard("yes-no")
bot.send_message(chat_id=chat_id,
text=response_storage.select_message(5, 11, 'question'),
reply_markup=keyboard)
def onfifth12(e):
keyboard = utils.select_keyboard("yes-no")
bot.send_message(chat_id=chat_id,
text=response_storage.select_message(5, 12, 'question'),
reply_markup=keyboard)
def onfifth13(e):
keyboard = utils.select_keyboard("yes-no")
bot.send_message(chat_id=chat_id,
text=response_storage.select_message(5, 13, 'question'),
reply_markup=keyboard)
def onfifth14(e):
keyboard = utils.select_keyboard("yes-no")
bot.send_message(chat_id=chat_id,
text=response_storage.select_message(5, 14, 'question'),
reply_markup=keyboard)
def onfifth15(e):
keyboard = utils.select_keyboard("yes-no")
bot.send_message(chat_id=chat_id,
text=response_storage.select_message(5, 15, 'question'),
reply_markup=keyboard)
def onfifth16(e):
keyboard = utils.select_keyboard("yes-no")
bot.send_message(chat_id=chat_id,
text=response_storage.select_message(5, 16, 'question'),
reply_markup=keyboard)
def onfifth17(e):
bot.send_message(chat_id=chat_id,
text=response_storage.select_message(5, 4, 'answer'))
if fsm.current in finals:
fsm.go_to_start()
return
def onfifth_5_16_no(e):
bot.send_message(chat_id=chat_id,
text=response_storage.select_message(5, 5, 'answer'))
if fsm.current in finals:
fsm.go_to_start()
return
def onsixth1(e):
keyboard = utils.select_keyboard("yes-no")
bot.send_message(chat_id=chat_id,
text=response_storage.select_message(6, 1, 'question'),
reply_markup=keyboard)
def onsixth2(e):
keyboard = utils.select_keyboard("yes-no")
bot.send_message(chat_id=chat_id,
text=response_storage.select_message(6, 2, 'question'),
reply_markup=keyboard)
def onsixth2_yes(e):
bot.send_message(chat_id=chat_id,
text=response_storage.select_message(6, 1, 'answer'))
if fsm.current in finals:
fsm.go_to_start()
return
def onsixth2_no(e):
bot.send_message(chat_id=chat_id,
text=response_storage.select_message(6, 2, 'answer'))
if fsm.current in finals:
fsm.go_to_start()
return
def onsixth3(e):
keyboard = utils.select_keyboard("yes-no")
bot.send_message(chat_id=chat_id,
text=response_storage.select_message(6, 3, 'question'),
reply_markup=keyboard)
def onsixth3_no(e):
bot.send_message(chat_id=chat_id,
text=response_storage.select_message(6, 3, 'answer'))
if fsm.current in finals:
fsm.go_to_start()
return
#Создаем объект бота
bot = telebot.TeleBot(config.token) #передаем в параметр уникальный токен нашего бота
fsm = create_fsm()
#Обработчик всех нажатий на кнопки
@bot.callback_query_handler(func=lambda call: True)
def callback_inline(call):
data = call.data #получаем значение, соответствующее кнопки(нажал кнопку 5 - получил в call.data значение 5).
#Далее, в соответствии с текущим состоянием(fsm.current) и значением, полученным после нажатия на кнопку,
# указываем в какое состояние необходимо перейти
if fsm.current == 'show_sections':
global section_number
section_number = int(data)
if section_number == 1:
fsm.selected_first()
return
if section_number == 2:
fsm.selected_second()
return
if section_number == 3:
fsm.selected_third()
return
if section_number == 4:
fsm.selected_fourth()
return
if section_number == 5:
fsm.selected_fifth()
return
if section_number == 6:
fsm.selected_sixth()
return
if fsm.current == 'first1':
if data == '1':
fsm.first1_to_first2()
return
if data == '2':
fsm.first1_to_no()
return
if fsm.current == 'first2':
if data == '1':
fsm.first2_to_yes()
return
if data == '2':
fsm.first2_to_no()
return
if data == '3':
fsm.first2_to_first3()
return
if fsm.current == 'first3':
if data == '1':
fsm.first3_to_yes()
return
if data == '2':
fsm.first3_to_first4()
return
if fsm.current == 'first4':
if data == '1':
fsm.first4_to_yes()
return
if data == '2':
fsm.first4_to_first5()
return
if fsm.current == 'first5':
if data == '1':
fsm.first5_to_yes()
return
if data == '2':
fsm.first5_to_first6()
return
if fsm.current == 'first6':
if data == '1':
fsm.first6_to_yes()
return
if data == '2':
fsm.first6_to_no()
return
if fsm.current == 'second1':
if data == '1':
fsm.second_to_partnership()
return
if data == '2':
fsm.second1_to_second2()
return
if fsm.current == 'second2':
if data == '1':
fsm.second_to_partnership()
return
if data == '2':
fsm.second2_to_second3()
return
if fsm.current == 'second3':
if data == '1':
fsm.second_to_partnership()
return
if data == '2':
fsm.second3_to_second4()
return
if fsm.current == 'second4':
if data == '1':
fsm.second_to_partnership()
return
if data == '2':
fsm.second4_to_second5()
return
if fsm.current == 'second5':
if data == '1':
fsm.second_to_partnership()
return
if data == '2':
fsm.second5_to_second6()
return
if fsm.current == 'second6':
if data == '1':
fsm.second_to_partnership()
return
if data == '2':
fsm.second6_to_second7()
return
if fsm.current == 'second7':
if data == '1':
fsm.second_to_partnership()
return
if data == '2':
fsm.second7_to_second8()
return
if fsm.current == 'second8':
if data == '1':
fsm.second_to_partnership()
return
if data == '2':
fsm.second8_to_second9()
return
if fsm.current == 'second9':
if data == '1':
fsm.second_to_partnership()
return
if data == '2':
fsm.second9_to_second10()
return
if fsm.current == 'second10':
if data == '1':
fsm.second_to_partnership()
return
if data == '2':
fsm.second10_to_no()
return
if fsm.current == 'partnership':
if data == '1':
fsm.partnership_to_tradename()
return
if data == '2':
fsm.partnership_to_partnership1()
return
if fsm.current == 'partnership1':
if data == '1':
fsm.partnership_to_tradename()
return
if data == '2':
fsm.partnership1_to_partnership2()
return
if fsm.current == 'partnership2':
if data == '1':
fsm.partnership_to_tradename()
return
if data == '2':
fsm.partnership2_to_partnership3()
return
if fsm.current == 'partnership3':
if data == '1':
fsm.partnership_to_tradename()
return
if data == '2':
fsm.partnership3_to_partnership4()
return
if fsm.current == 'partnership4':
if data == '1':
fsm.partnership_to_tradename()
return
if data == '2':
fsm.partnership4_to_partnership5()
return
if fsm.current == 'partnership5':
if data == '1':
fsm.partnership_to_tradename()
return
if data == '2':
fsm.partnership5_to_partnership6()
return
if fsm.current == 'partnership6':
if data == '1':
fsm.partnership_to_tradename()
return
if data == '2':
fsm.partnership6_to_partnership7()
return
if fsm.current == 'partnership7':
if data == '1':
fsm.partnership_to_tradename()
return
if data == '2':
fsm.partnership7_to_partnership8()
return
if fsm.current == 'partnership8':
if data == '1':
fsm.partnership_to_tradename()
return
if data == '2':
fsm.partnership8_to_partnership9()
return
if fsm.current == 'partnership9':
if data == '1':
fsm.partnership_to_tradename()
return
if data == '2':
fsm.partnership9_to_no()
return
if fsm.current == 'tradename':
if data == '1':
fsm.tradename_to_tradename2()
return
if data == '2':
fsm.tradename_to_tradename1()
return
if fsm.current == 'tradename1':
if data == '1':
fsm.tradename1_to_tradename2()
return
if data == '2':
fsm.tradename1_to_tradename1_no()
return
if fsm.current == 'tradename2':
if data == '1':
fsm.tradename2_to_tradename3()
return
if data == '2':
fsm.tradename2_to_tradename2_no()
return
if fsm.current == 'tradename3':
if data == '1':
fsm.tradename3_to_tradename3_yes()
return
if data == '2':
fsm.tradename3_to_tradename3_no()
return
if fsm.current == 'third1':
if data == '1':
fsm.third1_to_third2()
return
if data == '2':
fsm.third1_to_no()
return
if fsm.current == 'third2':
if data == '1':
fsm.third2_to_third3()
return
if data == '2':
fsm.third2_to_no()
return
if fsm.current == 'third3':
if data == '1':
fsm.third3_to_third4()
return
if data == '2':
fsm.third3_to_no()
return
if fsm.current == 'third4':
if data == '1':
fsm.third4_to_third5()
return
if data == '2':
fsm.third_4_16_to_no()
return
if fsm.current == 'third5':
if data == '1':
fsm.third5_to_third6()
return
if data == '2':
fsm.third_4_16_to_no()
return
if fsm.current == 'third6':
if data == '1':
fsm.third6_to_third7()
return
if data == '2':
fsm.third_4_16_to_no()
return
if fsm.current == 'third7':
if data == '1':
fsm.third7_to_third8()
return
if data == '2':
fsm.third_4_16_to_no()
return
if fsm.current == 'third8':
if data == '1':
fsm.third8_to_third9()
return
if data == '2':
fsm.third_4_16_to_no()
return
if fsm.current == 'third9':
if data == '1':
fsm.third9_to_third10()
return
if data == '2':
fsm.third_4_16_to_no()
return
if fsm.current == 'third10':
if data == '1':
fsm.third10_to_third11()
return
if data == '2':
fsm.third_4_16_to_no()
return
if fsm.current == 'third11':
if data == '1':
fsm.third11_to_third12()
return
if data == '2':
fsm.third_4_16_to_no()
return
if fsm.current == 'third12':
if data == '1':
fsm.third12_to_third13()
return
if data == '2':
fsm.third_4_16_to_no()
return
if fsm.current == 'third13':
if data == '1':
fsm.third13_to_third14()
return
if data == '2':
fsm.third_4_16_to_no()
return
if fsm.current == 'third14':
if data == '1':
fsm.third14_to_third15()
return
if data == '2':
fsm.third_4_16_to_no()
return
if fsm.current == 'third15':
if data == '1':
fsm.third15_to_third16()
return
if data == '2':
fsm.third_4_16_to_no()
return
if fsm.current == 'third16':
if data == '1':
fsm.third16_to_third17()
return
if data == '2':
fsm.third_4_16_to_no()
return
if fsm.current == 'fourth1':
if data == '1':
fsm.fourth1_to_fourth2()
return
if data == '2':
fsm.fourth1_to_no()
return
if fsm.current == 'fourth2':
if data == '1':
fsm.fourth2_to_fourth3()
return
if data == '2':
fsm.fourth2_to_no()
return
if fsm.current == 'fourth3':
if data == '1':
fsm.fourth3_to_fourth4()
return
if data == '2':
fsm.fourth3_to_no()
return
if fsm.current == 'fourth4':
if data == '1':
fsm.fourth4_to_fourth5()
return
if data == '2':
fsm.fourth_4_20_to_no()
return
if fsm.current == 'fourth5':
if data == '1':
fsm.fourth5_to_fourth6()
return
if data == '2':
fsm.fourth_4_20_to_no()
return
if fsm.current == 'fourth6':
if data == '1':
fsm.fourth6_to_fourth7()
return
if data == '2':
fsm.fourth_4_20_to_no()
return
if fsm.current == 'fourth7':
if data == '1':
fsm.fourth7_to_fourth8()
return
if data == '2':
fsm.fourth_4_20_to_no()
return
if fsm.current == 'fourth8':
if data == '1':
fsm.fourth8_to_fourth9()
return
if data == '2':
fsm.fourth_4_20_to_no()
return
if fsm.current == 'fourth9':
if data == '1':
fsm.fourth9_to_fourth10()
return
if data == '2':
fsm.fourth_4_20_to_no()
return
if fsm.current == 'fourth10':
if data == '1':
fsm.fourth10_to_fourth11()
return
if data == '2':
fsm.fourth_4_20_to_no()
return
if fsm.current == 'fourth11':
if data == '1':
fsm.fourth11_to_fourth12()
return
if data == '2':
fsm.fourth_4_20_to_no()
return
if fsm.current == 'fourth12':
if data == '1':
fsm.fourth12_to_fourth13()
return
if data == '2':
fsm.fourth_4_20_to_no()
return
if fsm.current == 'fourth13':
if data == '1':
fsm.fourth13_to_fourth14()
return
if data == '2':
fsm.fourth_4_20_to_no()
return
if fsm.current == 'fourth14':
if data == '1':
fsm.fourth14_to_fourth15()
return
if data == '2':
fsm.fourth_4_20_to_no()
return
if fsm.current == 'fourth15':
if data == '1':
fsm.fourth15_to_fourth16()
return
if data == '2':
fsm.fourth_4_20_to_no()
return
if fsm.current == 'fourth16':
if data == '1':
fsm.fourth16_to_fourth17()
return
if data == '2':
fsm.fourth_4_20_to_no()
return
if fsm.current == 'fourth17':
if data == '1':
fsm.fourth17_to_fourth18()
return
if data == '2':
fsm.fourth_4_20_to_no()
return
if fsm.current == 'fourth18':
if data == '1':
fsm.fourth18_to_fourth19()
return
if data == '2':
fsm.fourth_4_20_to_no()
return
if fsm.current == 'fourth19':
if data == '1':
fsm.fourth19_to_fourth20()
return
if data == '2':
fsm.fourth_4_20_to_no()
return
if fsm.current == 'fourth20':
if data == '1':
fsm.fourth20_to_fourth21()
return
if data == '2':
fsm.fourth_4_20_to_no()
return
if fsm.current == 'fifth1':
if data == '1':
fsm.fifth1_to_fifth2()
return
if data == '2':
fsm.fifth1_to_no()
return
if fsm.current == 'fifth2':
if data == '1':
fsm.fifth2_to_fifth3()
return
if data == '2':
fsm.fifth2_to_no()
return
if fsm.current == 'fifth3':
if data == '1':
fsm.fifth3_to_fifth4()
return
if data == '2':
fsm.fifth3_to_no()
return
if fsm.current == 'fifth4':
if data == '1':
fsm.fifth4_to_fifth5()
return
if data == '2':
fsm.fifth4_to_no()
return
if fsm.current == 'fifth5':
if data == '1':
fsm.fifth5_to_fifth6()
return
if data == '2':
fsm.fifth_5_16_to_no()
return
if fsm.current == 'fifth6':
if data == '1':
fsm.fifth6_to_fifth7()
return
if data == '2':
fsm.fifth_5_16_to_no()
return
if fsm.current == 'fifth7':
if data == '1':
fsm.fifth7_to_fifth8()
return
if data == '2':
fsm.fifth_5_16_to_no()
return
if fsm.current == 'fifth8':
if data == '1':
fsm.fifth8_to_fifth9()
return
if data == '2':
fsm.fifth_5_16_to_no()
return
if fsm.current == 'fifth9':
if data == '1':
fsm.fifth9_to_fifth10()
return
if data == '2':
fsm.fifth_5_16_to_no()
return
if fsm.current == 'fifth10':
if data == '1':
fsm.fifth10_to_fifth11()
return
if data == '2':
fsm.fifth_5_16_to_no()
return
if fsm.current == 'fifth11':
if data == '1':
fsm.fifth11_to_fifth12()
return
if data == '2':
fsm.fifth_5_16_to_no()
return
if fsm.current == 'fifth12':
if data == '1':
fsm.fifth12_to_fifth13()
return
if data == '2':
fsm.fifth_5_16_to_no()
return
if fsm.current == 'fifth13':
if data == '1':
fsm.fifth13_to_fifth14()
return
if data == '2':
fsm.fifth_5_16_to_no()
return
if fsm.current == 'fifth14':
if data == '1':
fsm.fifth14_to_fifth15()
return
if data == '2':
fsm.fifth_5_16_to_no()
return
if fsm.current == 'fifth15':
if data == '1':
fsm.fifth15_to_fifth16()
return
if data == '2':
fsm.fifth_5_16_to_no()
return
if fsm.current == 'fifth16':
if data == '1':
fsm.fifth16_to_fifth17()
return
if data == '2':
fsm.fifth_5_16_to_no()