def _build_msg_content(self, msgtype='text', **kwargs):
        """
        构造消息内容

        :param content: 消息内容，最长不超过2048个字节
        :param msgtype: 消息类型，可以为text/image/voice/video/file/textcard/news/mpnews/markdown
        :param kwargs: 具体消息类型的扩展参数
        :return:
        """
        data = {'msgtype': msgtype}
        if msgtype == 'text':
            data[msgtype] = {'content': kwargs.get('content')}
        elif msgtype == 'image' or msgtype == 'voice' or msgtype == 'file':
            data[msgtype] = {'media_id': kwargs.get('media_id')}
        elif msgtype == 'video':
            data[msgtype] = {
                'media_id': kwargs.get('media_id'),
                'title': kwargs.get('title'),
                'description': kwargs.get('description')
            }
        elif msgtype == 'textcard':
            data[msgtype] = {
                'title': kwargs.get('title'),
                'description': kwargs.get('description'),
                'url': kwargs.get('url'),
                'btntxt': kwargs.get('btntxt'),
            }
        elif msgtype == 'news':
            # {
            #         "articles" :
            #         [
            #             {
            #                 "title" : "中秋节礼品领取",
            #                 "description" : "今年中秋节公司有豪礼相送",
            #                 "url":"https://zhidao.baidu.com/question/2073647112026042748.html",
            #                 "picurl":"http://res.mail.qq.com/node/ww/wwopenmng/images/independent/doc/test_pic_msg1.png"
            #              }
            #         ]
            #     }
            data[msgtype] = kwargs
        elif msgtype == 'mpnews':
            # {
            #         "articles":[
            #             {
            #                 "title": "地球一小时",
            #                 "thumb_media_id": "biz_get(image)",
            #                 "author": "Author",
            #                 "content_source_url": "https://work.weixin.qq.com",
            #                 "content": "3月24日20:30-21:30 \n办公区将关闭照明一小时，请各部门同事相互转告",
            #                 "digest": "3月24日20:30-21:30 \n办公区将关闭照明一小时"
            #             }
            #          ]
            #     }
            data[msgtype] = kwargs
        elif msgtype == 'markdown':
            #  {
            #         "content": "您的会议室已经预定，稍后会同步到`邮箱`
            #                 >**事项详情**
            #                 >事　项：<font color=\"info\">开会</font>
            #                 >组织者：@miglioguan
            #                 >参与者：@miglioguan、@kunliu、@jamdeezhou、@kanexiong、@kisonwang
            #                 >
            #                 >会议室：<font color=\"info\">广州TIT 1楼 301</font>
            #                 >日　期：<font color=\"warning\">2018年5月18日</font>
            #                 >时　间：<font color=\"comment\">上午9:00-11:00</font>
            #                 >
            #                 >请准时参加会议。
            #                 >
            #                 >如需修改会议信息，请点击：[修改会议信息](https://work.weixin.qq.com)"
            #    }
            data[msgtype] = kwargs
        else:
            raise TypeError('不能识别的msgtype: %s' % msgtype)
        return data