谁人不识我千夜 2024-04-20 13:24 采纳率: 0%
浏览 4
已结题

怎么让wx群机器人发送音乐

不知道怎么让wx群机器人发送音乐,如下图所示:
https://qianyekeji.cn/img2/0a6439f3581bad1c51152cfffcadf75.jpg
如果我直接给音乐指定链接发送的话会这样显示
https://qianyekeji.cn/img2/9da735f5ab1a6b16b0dd59333818ead.jpg

  • 写回答

19条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2024-04-20 13:24
    关注

    引自免费微信小程序:皆我百晓生

    在微信环境中,要实现群聊机器人发送音乐,通常需要借助第三方服务或开发平台,因为微信官方并未提供直接通过API发送音乐消息的功能。以下是一种可行的解决方案,采用企业微信应用(以Python为例)结合微信插件“群机器人”来实现这一目标:

    步骤一:创建企业微信应用

    1. 登录企业微信管理后台(https://work.weixin.qq.com),进入“应用管理”,点击“创建应用”。

    2. 填写应用信息,如应用名称、描述等,选择“自建”,并勾选“群机器人”。保存后获取到AppID和AppSecret。

    步骤二:配置群机器人

    1. 在新创建的应用中,找到“群机器人”插件,启用并添加需要发送音乐的微信群。

    2. 设置群机器人的消息接收方式,如关键词触发、定时推送等。

    步骤三:编写Python代码发送音乐消息

    使用requests库向企业微信API发送请求,传递音乐信息。以下是一个示例代码:

    import requests
    import json
    
    # 企业微信应用的配置信息
    app_id = 'your_app_id'
    app_secret = 'your_app_secret'
    agent_id = 'your_agent_id'  # 应用的AgentID,在应用详情页获取
    access_token_url = f'https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid={app_id}&corpsecret={app_secret}'
    send_message_url = f'https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token='
    
    def get_access_token():
        response = requests.get(access_token_url)
        data = response.json()
        return data['access_token']
    
    def send_music_message(access_token, chat_id, music_url, title=None, description=None):
        message_data = {
            "touser": "@all",  # 或者指定群成员的openid
            "toparty": chat_id,  # 群聊的id,可在群聊设置页面获取
            "msgtype": "music",
            "agentid": agent_id,
            "music": {
                "title": title or "未命名音乐",
                "description": description or "",
                "url": music_url,
                "hqurl": music_url,  # 如果有高质量音乐链接,可替换此字段
                "thumb_media_id": ""  # 若有专辑封面图片的media_id,可填入
            }
        }
    
        headers = {'Content-Type': 'application/json'}
        response = requests.post(send_message_url + access_token, headers=headers, data=json.dumps(message_data))
        return response.json()
    
    if __name__ == "__main__":
        access_token = get_access_token()
        chat_id = 'your_chat_id'  # 替换为实际群聊ID
        music_url = 'https://example.com/music.mp3'  # 替换为实际音乐链接
        title = "示例音乐标题"
        description = "这是音乐的简短描述"
    
        response = send_music_message(access_token, chat_id, music_url, title, description)
        print(response)
    

    注意:

    • 请确保替换上述代码中的your_app_idyour_app_secretyour_agent_idyour_chat_id为实际值。
    • 音乐链接应为可公开访问的URL,且确保音乐格式符合微信支持的范围(如MP3)。
    • 若要附带专辑封面,需先通过企业微信的素材管理接口上传图片,获取到对应的thumb_media_id填入消息数据。

    按照上述步骤操作和代码示例,你应该能成功通过企业微信应用中的群机器人向微信群发送音乐消息。如有其他疑问或需要进一步协助,请随时提问。

    评论 编辑记录

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 4月22日
  • 创建了问题 4月20日

悬赏问题

  • ¥15 uniapp uview http 如何实现统一的请求异常信息提示?
  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看
  • ¥15 关于#Java#的问题,如何解决?
  • ¥15 加热介质是液体,换热器壳侧导热系数和总的导热系数怎么算
  • ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
  • ¥15 cmd cl 0x000007b
  • ¥20 BAPI_PR_CHANGE how to add account assignment information for service line