simpledemo.py 文件源码

python
阅读 20 收藏 0 点赞 0 评论 0

项目:hangoutsbot 作者: das7pad 项目源码 文件源码
def process_payload(self, path, query_string, payload):
        logging.warning("[DEPRECATED] simpledemo.webhookReceiver, use sinks.generic.SimpleMessagePoster")

        sinkname = self.sinkname

        path = path.split("/")
        conversation_id = path[1]
        if conversation_id is None:
            print("{}: conversation id must be provided as part of path".format(sinkname))
            return

        image_id = None
        if "image" in payload:
            image_data = False
            image_filename = False
            image_type = 'unknown'
            if "base64encoded" in payload["image"]:
                raw = base64.b64decode(payload["image"]["base64encoded"], None, True)
                image_data = io.BytesIO(raw)
                image_type = imghdr.what('ignore', raw)
                if not image_type:
                  image_type = 'error'
            if "filename" in payload["image"]:
                image_filename = payload["image"]["filename"]
            else:
                image_filename = str(int(time.time())) + "." + image_type
            print("{}: uploading image: {}".format(sinkname, image_filename))
            image_id = await webhookReceiver._bot._client.upload_image(image_data, filename=image_filename)

        html = ""
        if "echo" in payload:
            html = payload["echo"]
        else:
            # placeholder text
            html = "<b>hello world</b>"
        segments = simple_parse_to_segments(html)
        print("{} sending segments: {}".format(sinkname, len(segments)))

        await self._bot.coro_send_message(conversation_id, segments, context=None, image_id=image_id)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号