tryparse
This commit is contained in:
parent
663a68ac77
commit
c890b731d8
@ -1,9 +1,32 @@
|
||||
import logging
|
||||
from typing import Optional
|
||||
|
||||
from daemons.bot import bot
|
||||
from helpers.mongo import mongo
|
||||
|
||||
|
||||
def try_parse(message: str) -> Optional[int]:
|
||||
letters = {
|
||||
"ноль": 0,
|
||||
"один": 1,
|
||||
"два": 2,
|
||||
"три": 3,
|
||||
"четыре": 4,
|
||||
"пять": 5,
|
||||
"шесть": 6,
|
||||
"семь": 7,
|
||||
"восемь": 8,
|
||||
"девять": 9
|
||||
}
|
||||
final = 0
|
||||
for word in message.split():
|
||||
try:
|
||||
final = final * 10 + letters[word]
|
||||
except KeyError:
|
||||
return None
|
||||
return final
|
||||
|
||||
|
||||
class Processor:
|
||||
def __init__(self, data: dict):
|
||||
self.data = data
|
||||
@ -22,7 +45,7 @@ class Processor:
|
||||
logging.info("user %s is saying\"%s\"", self.user_id, self.message)
|
||||
if "что ты умеешь" in self.message or "помощь" in self.message:
|
||||
return {
|
||||
"text": "Я буду тебе подсказывать расписание занятий из РУЗа. Чтобы подключить меня к своему расписанию, зайди в бота, нажми на кнопку \"Подключение Алисы\" и назови мне код из сообщения."
|
||||
"text": "Я буду тебе подсказывать расписание занятий из РУЗа. Чтобы подключить меня к своему расписанию, зайди в бота, нажми на кнопку \"Подключение Алисы\" и назови мне код из сообщения по одной цифре."
|
||||
}
|
||||
if self.data['session']['new']:
|
||||
if self.user_id is None:
|
||||
@ -31,7 +54,7 @@ class Processor:
|
||||
user = mongo.users_collection.find_one({"yandex_id": self.user_id})
|
||||
if user is None:
|
||||
return {
|
||||
"text": "Привет! Я буду тебе подсказывать расписание занятий из РУЗа. Чтобы подключить меня к своему расписанию, зайди в бота, нажми на кнопку \"Подключение Алисы\" и назови мне код из сообщения."
|
||||
"text": "Привет! Я буду тебе подсказывать расписание занятий из РУЗа. Чтобы подключить меня к своему расписанию, зайди в бота, нажми на кнопку \"Подключение Алисы\" и назови мне код из сообщения по одной цифре."
|
||||
}
|
||||
else:
|
||||
lesson = self.get_lesson_for_user(user['hse_id'])
|
||||
@ -45,9 +68,9 @@ class Processor:
|
||||
"end_session": True
|
||||
}
|
||||
else:
|
||||
hse_id = self.message.replace(' ', '')
|
||||
hse_id = try_parse(self.message)
|
||||
try:
|
||||
user = mongo.users_collection.find_one({"hse_id": int(hse_id)})
|
||||
user = mongo.users_collection.find_one({"hse_id": hse_id})
|
||||
except ValueError:
|
||||
return {
|
||||
"text": "Извини, не могу разобрать код, назови его еще раз"
|
||||
|
Loading…
Reference in New Issue
Block a user