连着两天反复点发送,页面一直弹发送失败的提示,翻遍设置来回切换网络,那会才真正琢磨短信为什么会发送失败,之前一直以为只是信号差的小事。
最先试的是切换蜂窝和无线网,把飞行模式打开再关掉,重新搜网,看着信号格满格,再发一次,依旧不行。通讯录里这个号码存了挺久,复制号码的时候特意核对数字,没有多输一位,也没漏掉区号,排除输错号码这个最简单的情况。当时心里觉得奇怪,别的号码发消息都顺顺利利,唯独这一个联系人发不出去,就开始猜是不是对方那边把消息拦截了。
找别的朋友拿手机,输入同一个号码发送短信,消息正常送达,这一下就推翻拦截的猜想。手里的设备换了个普通的手机号发送,也没问题,不是手机短信模块出故障。折腾好久才反应过来,有可能是接收方的号码本身出了状况,不是我这边操作的问题。
这只是我的个人感受,不是标准答案。
接着试着打这个号码的电话,听筒里传来提示音,说号码暂时无法接通,后续查询之后才知道,这个号码长时间欠费停机,运营商那边限制了短信接收功能,不管是谁往这个号码发短信,都会返回发送失败的回执,发件端看到的结果就是发送不成功。之前完全没想过停机不只是接不到电话,连带收短信的通道也一并关上,一直盯着自己手机找问题,白白耗了不少时间。
还有一次碰到不一样的情况,编辑的文字里面带了一串链接,连续发送三次全部失败。删掉链接,只留简单文字再点发送,一下子就发出去了。那个时候才留意到,部分短信通道对包含网址、特殊符号的内容比较敏感,内容本身会触发拦截,直接判定发送失败,不是号码或者信号的锅。
也碰到过高峰期拥堵的情况,傍晚的时候批量往外发几条通知短信,其中两条一直卡在发送中,过了半个多小时自己变成失败状态,隔一个小时再重新发送,同样的号码同样的文字,又能正常走通道了。通道拥堵没有固定规律,赶上流量大的时候,消息排队超时,最后就会判定发送失败。
还有一个容易漏掉的小点,短信中心号码被改动。之前清理手机设置的时候随手乱点,把里面的短信中心参数改乱了,之后往外发短信全部发不出去,恢复成默认参数之后,才恢复正常。这个改动不会有显眼提醒,不专门去看,根本发现不了。
没有一次性把所有可能性全部试完,有些情况我也没有碰到过,像是部分虚拟号段、副卡附属号码的接收限制,我没法确认是不是也会触发相同的失败反馈。每次碰到发送失败,我都是从简单的方向一点点排除,先核对号码,再换网络,再换设备交叉测试,慢慢缩小范围,而不是直接锁定某一个原因。
后来再遇到短信发不出去,不会第一时间反复疯狂点发送,先拿别的设备交叉验证一次,省下很多来回重试的功夫。