一、接口文档
https://developer.work.weixin.qq.com/document/path/95122
二、可能出现的错误码
41050:欢迎语welcome20秒失效,使用该code去发就会报这个。偶尔的重复发送第一次成功,第二次再发送也有可能返回41050
41051:第三方抢发/客户20秒内已提前聊天
41096:已有欢迎语在发送中(不代表客户已经收到了)
45033:超频
48002:可见范围没配置好
90207:欢迎语中配置的小程序参数异常
90208:欢迎语中配置的小程序appid不匹配
40007:不合法的media_id参数
发出去的欢迎语不是客户想要的
没有发送欢迎语,也没有收到好友添加回调
三、优化建议
欢迎语是企信微信最常用的功能,但也是比较容易出现问题的功能。
难点不在于如何实现,难在如何去适配企业微信的规则,如何去跟其它第三方应用共存。
代开发应用和第三方应用都是能同时配置多个,意味着单个的功能是存在竞争关系的,在开发和优化的时候,是需要考虑到被第三方、被企信、被自动化工具影响的情况下。客户都能正常收到,就算收不到也要有证据和理由说明给客户。
针对以上的一些错误情况,给出的一些建议。
41050: 从回调到到发送,整体代码逻辑耗时太久,超出20秒的情况,这里要做的要简化代码,别在发欢迎语的部分做更多业务进去。或者把欢迎语的功能做成异步,最终的目的是快。减去网络传输的消耗,整个逻辑的时间最好不要超出10秒。
41051: 情况1,如果是客户一加好友就立刻(非常快)发信息的话,就会造成这种情况。这种方式无解,只能跟客户说这是企信的规则。情况2,已经有其它的第三方发送了欢迎语了,所以不能再发送第二次
45033:发送欢迎语的接口基本不可能超频,但是如果该租户刚好达到超频的限制时间中,调用欢迎语也会返回超频(多在其它大批量的功能操作下导致整个租户限流,有可能是自己有可能是第三方导致的),建议重试或者优化代码结构。 可以通过以下路径解除限流限制(https://open.work.weixin.qq.com/wwopen/devtool/checkCorpSpamBlock)
41096: 说明有其它应用抢发了,有可能其它应用抢发欢迎语的的内容失败了。导致好友没有收到。那么这里如果遇到了41096就直接重试3次(20秒内),能拿到41051,就证明客户一定能收到东西。
48002:员工可见范围移除了,调整就好。
90207,90208:配置的小程序参数不对,检查下就行。
40007:欢迎语附件的内容,过期了。在遇到该种情况下,就再次上传附件获取新的media_id,再重发欢迎语(20秒内)
发出去的欢迎语不是客户想要的:1、第三方抢发 2、企信后台设置默认欢迎语 3、业务系统逻辑错误,乱发
没有发送欢迎语,也没有收到好友添加回调:1、回调没有配置好,自个检查 2、员工添加好友达到上限 3、????
四、最后
多加日志。(回调会重复发多次的。多加日志才能观察。成功发送\失败发送都加日志,把传参和返回内容都打上)
加重试。业务报错、逻辑报错都加重试。