应用推送消息

        详情请参考：https://work.weixin.qq.com/api/doc#90000/90135/90248
        :param chat_id: 群聊id
        :param msg_type: 消息类型，可以为text/image/voice/video/file/textcard/news/mpnews/markdown
        :param kwargs: 具体消息类型的扩展参数
        :return:

def send(self, chat_id, msg_type, **kwargs):
        """
        应用推送消息

        详情请参考：https://work.weixin.qq.com/api/doc#90000/90135/90248
        :param chat_id: 群聊id
        :param msg_type: 消息类型，可以为text/image/voice/video/file/textcard/news/mpnews/markdown
        :param kwargs: 具体消息类型的扩展参数
        :return:
        """
        data = {
            'chatid': chat_id,
            'safe': kwargs.get('safe') or 0
        }
        data.update(self._build_msg_content(msg_type, **kwargs))

        return self._post('appchat/send', data=data)