Example #1
0
 def __repr__(self):
     _repr = '{klass}({name})'.format(klass=self.__class__.__name__,
                                      name=repr(self.name))
     if six.PY2:
         return to_binary(_repr)
     else:
         return to_text(_repr)
Example #2
0
 def __repr__(self):
     _repr = "{klass}({msg})".format(klass=self.__class__.__name__,
                                     mss=repr(self._data))
     if six.PY2:
         return to_binary(_repr)
     else:
         return to_text(_repr)
Example #3
0
 def __repr__(self):
     _repr = '{klass}({name})'.format(
         klass=self.__class__.__name__,
         name=repr(self.name)
     )
     if six.PY2:
         return to_binary(_repr)
     else:
         return to_text(_repr)
Example #4
0
 def __repr__(self):
     _repr = "{klass}({msg})".format(
         klass=self.__class__.__name__,
         mss=repr(self._data)
     )
     if six.PY2:
         return to_binary(_repr)
     else:
         return to_text(_repr)
Example #5
0
def parse_message(xml):
    """
        微信服务器推送过来的消息使用POST方法,消息内容是xml格式的内容
    :param xml: xml格式消息
    :return:消息类型或者事件类型
    """

    if not xml:
        return
    message = xmltodict.parse(to_text(xml))['xml']
    message_type = message['MsgType'].lower()
    if message_type in ('event', 'device_event'):  # 若接收到事件推送
        event_type = message['Event'].lower()  # 事件类型

        if message_type == 'device_event':  # 设备事件
            event_type = 'device_{event}'.format(event=event_type)
        if event_type == 'subscribe' and message.get('EventKey'):  # 关注事件
            event_type = 'subscribe_scan'
            message['Event'] = event_type
            message['EventKey'] = message['EventKey'].replace('qrscene_', '')
        message_class = EVENT_TYPES.get(event_type, UnknownMessage)
    else:
        message_class = MESSAGE_TYPES.get(message_type, UnknownMessage)
    return message_class(message)
Example #6
0
def parse_message(xml):
    """
        微信服务器推送过来的消息使用POST方法,消息内容是xml格式的内容
    :param xml: xml格式消息
    :return:消息类型或者事件类型
    """

    if not xml:
        return
    message = xmltodict.parse(to_text(xml))["xml"]
    message_type = message["MsgType"].lower()
    if message_type in ("event", "device_event"):  # 若接收到事件推送
        event_type = message["Event"].lower()  # 事件类型

        if message_type == "device_event":  # 设备事件
            event_type = "device_{event}".format(event=event_type)
        if event_type == "subscribe" and message.get("EventKey"):  # 关注事件
            event_type = "subscribe_scan"
            message["Event"] = event_type
            message["EventKey"] = message["EventKey"].replace("qrscene_", "")
        message_class = EVENT_TYPES.get(event_type, UnknownMessage)
    else:
        message_class = MESSAGE_TYPES.get(message_type, UnknownMessage)
    return message_class(message)
Example #7
0
 def __to_text(self, value):
     return to_text(value)
Example #8
0
 def __base64_decode(self, text):
     return to_text(base64.b64decode(to_binary(text)))
Example #9
0
 def __to_text(self, value):
     return to_text(value)
Example #10
0
 def __base64_decode(self, text):
     return to_text(base64.b64decode(to_binary(text)))
Example #11
0
 def __str__(self):
     if six.PY2:
         return to_binary(self.render())
     else:
         return to_text(self.render())