Implemented #13

This commit is contained in:
REDNBLACK 2016-11-14 20:42:51 +03:00
parent e1a7f1c542
commit 6508cba988
2 changed files with 21 additions and 7 deletions

View File

@ -1,6 +1,7 @@
import logging
from telegram.ext import MessageHandler as ParentHandler, Filters
from telegram import ChatAction
from src.domain.message import Message
from src.entity.chat import Chat
@ -20,6 +21,8 @@ class MessageHandler(ParentHandler):
chat = Chat.get_chat(update.message)
message = Message(chat=chat, message=update.message)
self.__notify(message)
if message.has_text():
logging.debug("[Chat %s %s bare_text] %s" %
(message.chat.chat_type,
@ -31,6 +34,9 @@ class MessageHandler(ParentHandler):
elif message.is_sticker():
return self.__process_sticker(message)
def __notify(self, message):
self.message_sender.send_action(entity=message, action=ChatAction.TYPING)
def __process_message(self, message):
self.data_learner.learn(message)

View File

@ -14,7 +14,7 @@ class MessageSender:
entity.chat.telegram_id,
message))
self.bot.sendMessage(chat_id=entity.chat.telegram_id, text=message)
self.bot.send_message(chat_id=entity.chat.telegram_id, text=message)
def reply(self, entity, message):
if message == '':
@ -25,9 +25,17 @@ class MessageSender:
entity.chat.telegram_id,
message))
self.bot.sendMessage(chat_id=entity.chat.telegram_id,
reply_to_message_id=entity.message.message_id,
text=message)
self.bot.send_message(chat_id=entity.chat.telegram_id,
reply_to_message_id=entity.message.message_id,
text=message)
def send_action(self, entity, action):
logging.debug("[Chat %s %s send_action] %s" %
(entity.chat.chat_type,
entity.chat.telegram_id,
action))
self.bot.send_chat_action(chat_id=entity.chat.telegram_id, action=action)
def send_sticker(self, entity, sticker_id):
if sticker_id == '':
@ -38,6 +46,6 @@ class MessageSender:
entity.chat.telegram_id,
sticker_id))
self.bot.sendSticker(chat_id=entity.chat.telegram_id,
reply_to_message_id=entity.message.message_id,
sticker=sticker_id)
self.bot.send_sticker(chat_id=entity.chat.telegram_id,
reply_to_message_id=entity.message.message_id,
sticker=sticker_id)