# 发送消息接口有什么限制吗?
# 限制原因
微信公众号对模板消息推送有一定的条数上限。超过这个上限有当日将无法发送模板消息,也就是所有pushplus的用户都将无法使用微信渠道的推送功能。
从监控日志来看,每天都会有大量错误的请求、无效的请求。这些请求会给服务器造成一定的压力,从而影响正常请求的推送速度。
基于用户的历史消息数据,大部分用户单日的推送量都小于200条。
微信官方针对使用模板消息来下发营销通知的行为日益收紧。高频的给同一用户发送相同的内容,与模板无关联的内容,可能被微信官方删除模板或者直接封停推送能力。
# 接口限制
为了让大家合理规范的使用微信渠道的消息推送,pushplus在单日请求次数上做了部分限制。每人每日可请求次数为200次,当大于200次的时候消息将不在推送。如继续发送请求,超过2000次时,将会限制用户推送微信消息7天。如继续请求接口,将会受到更加严厉的惩罚。请及时减少推送请求,频率降低到正常范围内后才会自动解除限制。
同时为了减少程序异常造成高频的请求,发送消息接口对请求频率做出了限制,1分钟内接收5次请求,超出的请求将不再推送。另外对于相同的内容,1小时内限制发送3条。
为了防止网络诈骗,同时也是遵守国家法律法规,2024年8月起未实名认证的用户将无法调用发送消息接口和使用支付功能,接口将会返回905的错误码。仅影响发送消息接口和支付功能,不影响接收消息和其他接口功能!请尽快完成实名制。
# 各渠道使用额度
功能 | 未实名用户额度 | 实名用户额度 | 会员用户额度 |
---|---|---|---|
微信渠道日请求次数 | 0次 | 200次 | 2,000次 |
企业微信应用渠道日请求次数 | 0次 | 1,000次 | 10,000次 |
webhook渠道日请求次数 | 0次 | 1,000次 | 10,000次 |
邮件渠道日请求次数 | 0次 | 200次 | 1,000次 |
# 微信渠道限制
单日请求次数 | 实名用户 | 会员用户 |
---|---|---|
0 ≤请求次数< 200 | 正常推送 | 正常推送 |
200 ≤请求次数< 2000 | 当日无法推送,次日凌晨恢复正常 | 正常推送 |
2000 ≤请求次数< 1万 | 减少推送次数后7天恢复正常 | 当日无法推送,次日凌晨恢复正常 |
1万 ≤ 请求次数 | 提示禁止发送消息。解封方法 | 减少推送次数后48小时恢复正常 |
- 注意:请求次数不等于接收到消息的条数。如:发送了错误的请求并不会收到推送消息,但依然会计算请求次数。
长度限制 | 实名用户 | 会员用户 |
---|---|---|
标题长度 | 100个字 | 200个字 |
内容长度 | 2万个字 | 10万个字 |
内容 | 频率 |
---|---|
请求频率 | 1分钟5次 |
相同内容 | 1小时3条 |
在微信公众号中发送“请求次数”可以查询当日请求接口次数。发送“解封时间”可以查询解封日期。
# 会员限制说明
为了满足部分推送消息需求量较大的用户,目前已经推出会员服务,每日可请求次数2000次。如果请求次数超过1万次时,将会限制用户推送微信消息2天。对于会员用户暂不会对账号进行禁用。
对于已经被禁用的用户,需要先解封账号后再开通会员。
注意:如您是因为超过请求次数被暂停推送,开通会员并不会立马恢复正常!
# 正确的做法
- 请根据请求的返回码来判断是否全局停止推送。
当返回码值是900的时候,代表用户已经无法再推送消息。所以可以根据返回值来判断当天是否让程序继续调用发送消息接口。
- 消息接口是异步的,不要根据“请求成功”判断是否提送成功。
请勿根据同步返回的“请求成功”就认为推送成功了。请求成功只是代表收到请求的信息了,并不代表推送完成了!请根据同步响应的流水号来查询最终的推送结果。也可以配置回调地址来接收推送结果。
- 手动关闭推送功能
可以在公众号菜单中“功能”->“个人中心”->“功能设置”—>“是否开启发送消息”中手动关闭发送消息功能,来避免账号进一步的受限。等排查出请求次数较多的原因并修复后再开启。
在公众号中发送“请求次数”可以查看各渠道的请求次数。如已被封号,可以发送“解封账号”来解除限制。