Advertisement
kirya522

Untitled

Mar 23rd, 2018
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.45 KB | None | 0 0
  1. import telebot
  2. import Handlers
  3. import config
  4. import UserStates
  5. import Data
  6.  
  7.  
  8. Handlers.LoadData()
  9. bot = telebot.TeleBot(config.token) #подключение бота к программе
  10.  
  11.  
  12. @bot.message_handler(commands=['admin']) #Admin checker
  13. def AdminComand(message):
  14.     UserStates.SetState(message.chat.id, config.States.S_Admin.value)
  15.     bot.send_message(message.chat.id,'Вы перешли в режим администратора, введите вопрос')
  16.  
  17. @bot.message_handler(func= lambda message: UserStates.GetState(message.chat.id)==config.States.S_Admin.value)
  18. def QuestionInput(message):
  19.     Data.question = message.text
  20.     if message.text == '/exit':
  21.         UserStates.SetState(message.chat.id, config.States.S_Chat.value)
  22.         bot.send_message(message.chat.id, "Вы вышли из режима администратора")
  23.     else:
  24.         UserStates.SetState(message.chat.id, config.States.S_Admin_Q.value)
  25.         bot.send_message(message.chat.id,'Введите ответ')
  26.  
  27.  
  28. @bot.message_handler(func=lambda message: UserStates.GetState(message.chat.id)==config.States.S_Admin_Q.value)
  29. def AnswerInput(message):
  30.     Data.answer = message.text
  31.     if message.text == '/exit':
  32.         UserStates.SetState(message.chat.id, config.States.S_Chat.value)
  33.         bot.send_message(message.chat.id, "Вы вышли из режима администратора")
  34.     else:
  35.         Handlers.AddQuestionToBase(Data.question,Data.answer)
  36.         bot.send_message(message.chat.id, "Вопрос и ответ успешнно добавлены")
  37.         UserStates.SetState(message.chat.id, config.States.S_Chat.value)
  38.         Handlers.LoadData()
  39.  
  40.  
  41.  
  42. @bot.message_handler(content_types=['text']) #получение сообщения от пользователя
  43. def SearchInBase(message):
  44.     file = open('Messages.txt', 'a')
  45.     file.write(message.text + '\n')
  46.     file.close()
  47.     print('начальная форма: ' + message.text )
  48.     MessageBaseForm = Handlers.SentenceToNormal(message.text)
  49.     print('словарная форма: '+MessageBaseForm)
  50.     AnswerIndex, Value = Handlers.bestOfSimmularity(MessageBaseForm, Data.QuestionDataBase, Data.QuestionDict)
  51.  
  52.     if(Value * 100):
  53.         bot.send_message(message.chat.id, Data.AnswerDataBase[AnswerIndex])
  54.     else:
  55.         bot.send_message(message.chat.id, 'Ответа на ваш вопрос нет')
  56.     print()
  57.  
  58. bot.polling(none_stop=True)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement