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

如何接收Twilio号码的短信回复至个人号码并实现代回复显原号?

Twilio 双向短信转发实现方案

一、将潜在客户的短信回复转发至个人号码

你可以通过配置Twilio号码的Webhook+简单后端实现:

  1. 设置Twilio号码的短信接收Webhook
    登录Twilio控制台,找到你用于发送营销短信的号码,在「Messaging」配置项里,把「A Message Comes In」的处理方式设为「Webhook」,填写你的后端服务公网URL,请求方法选「POST」。

  2. 编写后端转发逻辑
    用任意语言写一个接收Twilio请求的服务,调用Twilio API将客户回复转发到你的个人号码。以下是Python Flask的示例:

from flask import Flask, request
from twilio.rest import Client

app = Flask(__name__)

# 替换为你的Twilio账号信息
account_sid = '你的Twilio账号SID'
auth_token = '你的Twilio Auth Token'
client = Client(account_sid, auth_token)

# 配置号码:你的个人号码(带国家码,如+8613xxxxxx)、你的Twilio号码
personal_phone = '+8613xxxxxx'
twilio_phone = '+1xxxxxx'

@app.route('/forward-sms', methods=['POST'])
def forward_sms():
    # 获取客户发来的短信内容和号码
    customer_msg = request.form['Body']
    customer_phone = request.form['From']
    
    # 转发到个人号码,附带客户号码便于识别
    client.messages.create(
        body=f"【客户回复】{customer_phone}:{customer_msg}",
        from_=twilio_phone,
        to=personal_phone
    )
    return '', 200

if __name__ == '__main__':
    app.run(port=5000)
  1. 部署后端服务
    本地测试可以用ngrok生成临时公网URL(ngrok http 5000),正式使用可部署到云服务器或Serverless平台(如Twilio Functions)。

二、从个人号码回复时,向客户显示Twilio号码

可以在同一个后端里添加回复处理逻辑,或者用Twilio Studio可视化配置:

方式1:后端扩展逻辑

修改上面的后端代码,判断如果是你从个人号码发来的回复,就解析出目标客户号码,用Twilio号码发送:

@app.route('/forward-sms', methods=['POST'])
def handle_sms():
    incoming_msg = request.form['Body']
    sender_phone = request.form['From']
    receiver_phone = request.form['To']

    # 如果是个人号码发来的回复
    if sender_phone == personal_phone:
        # 假设回复格式为「客户号码 回复内容」,例如「+123456789 我会尽快联系你」
        msg_parts = incoming_msg.split(' ', 1)
        if len(msg_parts) >= 2:
            target_customer = msg_parts[0]
            reply_content = msg_parts[1]
            # 用Twilio号码发送回复
            client.messages.create(
                body=reply_content,
                from_=twilio_phone,
                to=target_customer
            )
        return '', 200
    # 如果是客户发来的消息,转发到个人号码
    else:
        client.messages.create(
            body=f"【客户回复】{sender_phone}:{incoming_msg}",
            from_=twilio_phone,
            to=personal_phone
        )
        return '', 200

方式2:用Twilio Studio无代码实现

  1. 登录Twilio控制台,进入「Studio」,新建一个Flow,触发方式选「Incoming Message」。
  2. 添加「Send Message」组件:收件人设为你的个人号码,内容填客户{{trigger.message.From}}回复:{{trigger.message.Body}},发送方选你的Twilio号码;同时在组件的「Set Variables」里存储客户号码,比如flow.vars.customer_phone = {{trigger.message.From}}。
  3. 添加「Wait for Reply」组件,设置等待你从个人号码回复。
  4. 添加第二个「Send Message」组件:收件人选{{flow.vars.customer_phone}},发送方选你的Twilio号码,内容填{{widgets.wait_for_reply.inbound.Body}}。

注意事项

  • 确保你的Twilio号码支持双向短信(绝大多数号码默认支持)。
  • 国内个人号码需要在Twilio控制台完成验证,才能接收Twilio发送的短信。
  • 如果用Serverless部署,推荐用Twilio Functions,无需自己维护服务器,直接在Twilio控制台编写代码。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.07 23:15:29