You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Cloud Run发送Twilio SMS仅Google Voice可接收,运营商收不到求助

解决Twilio SMS通过Cloud Run发送时T-Mobile无法接收但状态显示Delivered的问题

核心结论:Twilio控制台无需设置IP白名单,以下是关键排查和解决步骤:

  1. 核对请求参数一致性

    • 对比curl命令和Cloud Run代码中的From、To、Body参数,确保号码格式完全一致(必须带+号,无额外空格或特殊字符)
    • 检查代码是否添加了SmartEncoded、MediaUrl等非必要参数,部分运营商会拦截带特殊参数的消息
  2. 检查消息路由类型差异

    • 登录Twilio控制台查看两种方式发送的消息详情:
      • curl发送的消息可能走了10DLC/短码路由,而Cloud Run发送的用了长码,T-Mobile对长码的过滤规则更严格
      • 若为长码问题,需在Twilio控制台完成10DLC品牌注册和消息模板审核,提升运营商投递优先级
  3. 统一消息路由地区

    • Cloud Run的出口IP可能归属特定地区,部分运营商会拦截跨地区长码消息
    • 在代码中指定Twilio的region参数(如client.messages.create({..., region: 'us-east-1'})),确保和curl请求的路由地区一致
  4. 规范官方SDK用法

    • 优先使用twilio@3.80.0官方SDK,避免用axios/request直接调用API,确保代码逻辑正确:
      const twilio = require('twilio');
      const client = twilio('你的SID', '你的AUTH_TOKEN');
      
      client.messages.create({
        body: 'Hi, this is the message',
        from: '+14155551212',
        to: '+19251012002'
      }).then(message => console.log(message.sid))
        .catch(err => console.error(err));
      
    • 完善错误捕获,避免遗漏Twilio返回的隐性回执异常
  5. 获取运营商级投递日志

    • 即使Twilio显示delivered,运营商可能存在隐性拒收,联系Twilio支持可获取更详细的运营商投递回执,定位具体拦截原因

内容的提问来源于stack exchange,提问作者Max

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 03:15:49