示例#1
0
 def process(self, content: Content, msg: ReliableMessage) -> Optional[Content]:
     assert isinstance(content, TextContent), 'text content error: %s' % content
     sender = msg.sender
     nickname = self.facebook.name(identifier=sender)
     if self.__ignored(content=content, sender=sender, msg=msg):
         return None
     Log.debug('Received text message from %s: %s' % (nickname, content))
     response = self.__query(content=content, sender=sender)
     if response is not None:
         assert isinstance(response, TextContent)
         question = content.text
         answer = response.text
         group = content.group
         if group is None:
             # personal message
             Log.debug('Dialog > %s(%s): "%s" -> "%s"' % (nickname, sender, question, answer))
         else:
             # group message
             Log.debug('Group Dialog > %s(%s)@%s: "%s" -> "%s"' % (nickname, sender, group.name, question, answer))
             if self.messenger.send_content(sender=None, receiver=group, content=response):
                 text = 'Group message responded'
                 return ReceiptCommand(message=text)
             else:
                 text = 'Group message respond failed'
                 return ReceiptCommand(message=text)
         return response
示例#2
0
 def debug(self, msg: str):
     Log.debug('Storage::%s >\t%s' % (self.__class__.__name__, msg))