/
chatbot.py
39 lines (32 loc) · 1.37 KB
/
chatbot.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
# coding: utf-8
from recommendation import Recommendation
class Bot(object):
def __init__(self):
self.recommendation = Recommendation()
def respond_to(self, sender, message):
# Enregistre l'utilisateur s'il n'existe pas déjà
user = self.recommendation.register_user(sender)
# Donne le message pour que l'utilisateur l'utilise
user.give_message(message)
# Si le chatbot doit faire une recommandation ou pas
self.recommendation.make_recommendation(user)
if user.should_make_recommendation():
return self.recommendation.make_recommendation(user)
else:
intro = ""
print("bon,bad, neutre")
print(user.good_ratings)
print(user.bad_ratings)
print(user.neutral_ratings)
# Si l'utilisateur parle pour la première fois, affiche un message d'intro
if not user.has_been_asked_a_question():
intro = "Bonjour ! Je vais vous poser des questions puis vous faire une recommandation.\n"
else:
if (message == "oui"):
user.answer_yes()
elif (message == "non"):
user.answer_no()
else:
user.answer_neutral()
message = self.recommendation.ask_question(user)
return intro + message