Webhook接收Twilio消息显示短码而非分配号码的问题求助
解决Twilio回复短信来自短码而非分配号码的问题
1. 强制指定发送短信的From参数
在你的Flask代码发送回复短信的逻辑里,必须显式指定from_字段为你分配的Twilio号码,不能留空或依赖默认值。示例代码如下:
from twilio.rest import Client # 初始化Twilio客户端 client = Client(你的账户SID, 你的认证令牌) # 发送短信时明确设置发件人为你的Twilio号码 message = client.messages.create( body="你的回复内容", from_="+1234567890", # 替换成你实际的Twilio号码 to="+0987654321" # 接收短信的用户号码 )
如果未指定from_,Twilio会自动使用测试短码(如你遇到的50000)或系统分配的临时短码发送。
2. 配置Twilio控制台默认发件人
- 登录Twilio控制台,进入Messaging > Settings > Defaults页面
- 找到Default From Number选项,选择你已购买/分配的Twilio号码作为默认发件人
- 保存设置后,所有未指定
From的短信都会使用这个默认号码发送
3. 确认账户测试状态
- 检查控制台右上角的测试模式开关,确保处于关闭状态
- 确认代码中使用的是正式的
account_sid和auth_token,而非Twilio提供的测试凭据(测试凭据会强制使用测试短码)
4. 检查Conversations服务的发件人配置
由于你参考的是短信对话教程,需确认Conversations服务的默认发件人设置:
- 进入Conversations > Defaults页面
- 在Messaging Configuration板块,设置Default SMS Sender为你的Twilio号码
- 确保Webhook返回的回复逻辑中,未覆盖或错误设置发件人信息
内容的提问来源于stack exchange,提问作者Ricardo Chavelas
相关产品推荐
相关产品推荐

