Пример #1
0
    def accept_message(self, message):
        if self.state == "FINISHED":
            return False

        if is_negative(message.text):
            if self.bot.names[message.sender.id]:
                send_message(message.chat_id, u"Хорошо, будешь " + u", ".join(self.bot.names[message.sender.id]))
                self.state = "FINISHED"
            else:
                send_message(message.chat_id, u"Но надо же как-то называть!")
        elif "?" in message.text:
            send_message(message.chat_id, u"Ты скажи, можно ли тебя как-то ещё называть, а потом будешь вопросы задавать :)")
            send_message(message.chat_id, u"Если никак больше нельзя, так и скажи :)")
        else:
            name = message.text
            while True:
                for prefix in PREFIXES:
                    if name.lower().startswith(prefix):
                        name = name[len(prefix):]
                        break
                else:
                    break
            self.bot.names[message.sender.id].append(name)
            send_message(message.chat_id, random.choice(NEXT))

        return True
Пример #2
0
 def default_answer(self, message):
     if "hug" in message.text:
         interaction.send_message(message.chat_id,
             random.choice(POSITIVES) + ", " +
             random.choice(self.names[message.sender.id]) + ", " + message.text)
     else:
         interaction.send_message(message.chat_id,
             random.choice(self.names[message.sender.id]) + "! " +
             random.choice(HUG_IS_BETTER) + message.text)
Пример #3
0
    def process_updates(self):
        updates = interaction.get_updates(self.last_update_id + 1)
        messages = []
        for update in updates:
            if update.update_id > self.last_update_id:
                self.last_update_id = update.update_id
                messages.append(update.message)

        for message in messages:
            try:
                print "process", message.text
                self.process_message(message)
            except Exception, e:
                print e
                interaction.send_message(message.chat_id, u"Я сломался :(")
Пример #4
0
 def __init__(self, bot, first_message):
     self.bot = bot
     send_message(first_message.chat_id, GREETING)
     self.state = "WAITING"