用途:在服务器上接收 Twilio 号码的入站消息(inbound)和出站消息状态回调(status callback),返回 TwiML 回复或 204 确认,同一模式适用于 SMS、MMS、WhatsApp、RCS。
主要能力:处理入站参数(MessageSid、From、To、Body、NumMedia、MediaUrl0、MediaContentType0);处理媒体附件;用空 MessagingResponse 只确认不回复;通过 status_callback 跟踪 queued→sent→delivered(或 undelivered/failed)状态;用 X-Twilio-Signature 校验请求来源。
使用方式:需 Twilio 账号与可发消息的发送方并配置 Webhook URL、公网可访问端点(本地可用 ngrok http 5000)、TWILIO_ACCOUNT_SID 与 TWILIO_AUTH_TOKEN;SDK 安装 pip install twilio flask 或 npm install twilio express。在 Console 的 Phone Numbers > Active Numbers > 号码 > Messaging > "A Message Comes In" 设置 URL;也可用 API 更新 sms_url/sms_method,WhatsApp 与 RCS 在发送方配置。
限制:Webhook 响应不得超过 15 秒,超时 Twilio 会重试;回复须用 Content-Type: text/xml 的 TwiML,状态回调返回 204;ngrok URL 重启后会变化;状态回调为尽力而为,delivered 需运营商确认。入站 Body 属不可信外部输入,传给 LLM 时应作为用户输入隔离,签名校验只确认来源不保证内容安全。常见错误 11200 表示 Twilio 无法访问 Webhook URL,需检查可达性、DNS、防火墙与 SSL 证书。