短信发送成功了,但实际未收到是什么原因?

更新时间:
复制 MD 格式

运营商的回执是基于用户终端反馈来响应的,因此发送成功而没有收到的情况一般是用户终端问题导致的接收失败。建议按照以下情况排查:

通过代码调用SendSms接口发送短信

代码调用SendSms接口返回Code=OK仅表示请求被短信平台接收,不代表短信已送达手机。实际投递状态取决于运营商回执。

  1. 登录短信服务控制台,在左侧导航栏选择业务统计 > 发送记录

  2. 设置查询时间范围,输入接收手机号码,单击查询

  3. 根据查询结果判断:

    • 有发送记录:查看发送状态列。显示发送成功则短信已投递,按下方终端侧排查步骤检查手机接收问题;显示发送失败则查看失败原因列获取具体错误码。

    • 无发送记录:说明API调用实际未到达短信平台。检查代码中的签名名称、模板Code、模板参数格式是否正确。建议从OpenAPI门户获取SendSms接口的官方SDK示例代码,先单独运行验证通过后,再集成到业务代码中。

终端侧排查

  • 手机是否长时间不关机,建议关机重启下。

  • 手机收件箱是否已满,建议检查手机是否可以正常接收短信。

  • 手机是否为双卡双待,建议将SIM卡拿出来换一下卡槽。

  • 手机是否安装了安全软件,安全软件有可能会将短信拦截到垃圾信箱里。

检查完如果还未接收到短信,建议您将SIM卡换到其他手机上进行测试。