コード例 #1
0
ファイル: receiver.py プロジェクト: the-glu/pytg
    def _add_message(self, text):
        """
		Appends a message to the message queue.

		:type text: builtins.str
		:return:
		"""
        try:
            logger.debug("Received Message: \"{str}\"".format(str=text))
            json_dict = json.loads(text)
            message = DictObject.objectify(json_dict)
            message = fix_message(message)
        except ValueError as e:
            for check in fix_plain_output.all:
                m = check[0].match(text)
                if m:
                    message = DictObject(manual_result=m.groupdict(),
                                         type=check[1])
                    logger.warn(
                        "Manually parsed output! This should be json!\nMessage:>{}<"
                        .format(text))
                    break
            else:
                logger.warn(
                    "Received message could not be parsed.\nMessage:>{}<".
                    format(text),
                    exc_info=True)
                return
        if self.append_json:
            message.merge_dict({u("json"): text})
        with self._queue_access:
            self._queue.append(message)
            self._new_messages.release()
コード例 #2
0
ファイル: receiver.py プロジェクト: IBaklanov/pytg
    def _add_message(self, text):
        """
        Appends a message to the message queue.

        :type text: builtins.str
        :return:
        """
        try:
            logger.debug("Received Message: \"{str}\"".format(str=text))
            json_dict = json.loads(text)
            message = DictObject.objectify(json_dict)
            message = fix_message(message)
        except ValueError as e:
            for check in fix_plain_output.all:
                m = check[0].match(text)
                if m:
                    message = DictObject(manual_result=m.groupdict(), type=check[1])
                    logger.warn("Manually parsed output! This should be json!\nMessage:>{}<".format(text))
                    break
            else:
                logger.warn("Received message could not be parsed.\nMessage:>{}<".format(text), exc_info=True)
                return
        if self.append_json:
            message.merge_dict({u("json"): text})
        with self._queue_access:
            self._queue.append(message)
            self._new_messages.release()