收藏
回答

群发接口返回clientmsgid exist,但是却群发成功了?

1、批量发送

https://api.weixin.qq.com/cgi-bin/message/mass/sendall

请求:{"filter":{"is_to_all":false,"tag_id":558},"mpnews":{"media_id":"ipY8ByFhSw59RM6xMJjr359EQM6i7q82EWONpnM4pKY"},"msgtype":"mpnews","send_ignore_reprint":1,"clientmsgid":"ms_wechat_18"}

返回{"errcode":45065,"errmsg":"clientmsgid exist","msg_id":3147494522}


2、批量发送查询

https://api.weixin.qq.com/cgi-bin/message/mass/get

请求:{"msg_id": "3147494522"}

返回:{"msg_id":3147494522,"msg_status":"SEND_SUCCESS"}


问题:

第一步返回了45065,很奇怪,clientmsgid并未重复;程序针对群发也没有失败重试的机制

第二步用第一步的msg_id进行查询,群发是成功的;且粉丝已经收到了推文

由于没有msg_data_id,后续对于图文的阅读分析无法处理,且也无法通过接口获取图文消息留言数据。

请协助查下问题产生的原因。



另,想到隔天通过图文统计数据分析获取msg_data_id;是否可行,还得明天再来验证了。

回答关注问题邀请回答
收藏

1 个回答

  • 凯..
    凯..
    2020-06-02

    问题多次出现,clientmsgid并未重复,程序也没有失败重试机制;

    话说有官方来解答一下么


    再记:

    2020-05-29T18:33:23+08:00

    标签下粉丝数:1422080

    {\"filter\":{\"is_to_all\":false,\"tag_id\":558},\"mpnews\":{\"media_id\":\"ipY8ByFhSw59RM6xMJjr37pEebB06vWlrls6mRIfLQg\"},\"msgtype\":\"mpnews\",\"send_ignore_reprint\":1,\"clientmsgid\":\"ms_wechat_10022\"}

    {"errcode":45066,"errmsg":"same clientmsgid retry too fast hint: [CX3h2a04096753]"}


    2020-06-02T19:20:59+08:00

    标签下粉丝数:3077778

    {\"filter\":{\"is_to_all\":false,\"tag_id\":570},\"mpnews\":{\"media_id\":\"ipY8ByFhSw59RM6xMJjr30fDbyiXNk2JUNdf4hMUfe0\"},\"msgtype\":\"mpnews\",\"send_ignore_reprint\":1,\"clientmsgid\":\"ms_wechat_10029\"}

    {"errcode":45065,"errmsg":"clientmsgid exist","msg_id":3147494552}

    2020-06-02
    有用
    回复 1
    • 凯..
      凯..
      2020-06-03
      怀疑clientmsgid是微信全平台校验,,程序生成规则再改复杂点,持续关注








      一、群发接口新增 clientmsgid 参数,开发者调用群发接口时可以主动设置 clientmsgid 参数,避免重复推送。
      群发时,微信后台将对 24 小时内的群发记录进行检查,如果该 clientmsgid 已经存在一条群发记录,则会拒绝本次群发请求,返回已存在的群发msgid,开发者可以调用“查询群发消息发送状态”接口查看该条群发的状态。
      2020-06-03
      回复
登录 后发表内容
问题标签