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

如何使用Twilio Notify实现批量短信的动态个性化内容?

实现Twilio批量动态内容短信的解决方案

核心问题说明

Twilio Notify服务的全局body参数无法直接为每个接收者单独设置个性化内容,需要通过以下两种方式解决:


方法1:使用Twilio Notify模板变量(批量API调用)

这种方式适合批量场景,只需一次API调用即可处理多条个性化短信,但需要先在Twilio后台配置模板:

  1. 在Twilio控制台创建短信模板
    模板内容设置为:Hi {{first_name}}, How are you welcome to panel,记录生成的模板SID。

  2. 修改代码生成带属性的绑定
    确保从数据库获取的phone_nos数组包含每个号码对应的first_name字段,然后在绑定中携带用户属性:

    $binding = array();
    foreach ($phone_nos as $item) { 
        $binding[] = json_encode([
            "binding_type" => "sms",
            "address" => $item['phone_no'],
            "attributes" => json_encode(["first_name" => $item['first_name']])
        ]);
    }
    
    // 调用Notify API时指定模板SID
    $notification = $twilio->notify->v1->services($serviceSid)
                    ->notifications->create([
                        "toBinding" => $binding,
                        "templateSid" => "你的模板SID", // 替换为控制台生成的模板SID
                        "sms" => [
                            "status_callback" => AURL .'GroupSms/bulk_sms_status_callback'
                        ],
                    ]);
    

方法2:单独发送每条短信(高度灵活)

如果不想依赖模板,直接循环每个用户单独调用短信API,内容完全自定义:

foreach ($phone_nos as $item) {
    $message = $twilio->messages->create(
        $item['phone_no'], // 接收号码
        [
            "from" => "你的Twilio发送号码", // 替换为你的Twilio号码
            "body" => "Hi {$item['first_name']}, How are you welcome to panel",
            "statusCallback" => AURL .'GroupSms/bulk_sms_status_callback'
        ]
    );
    // 可选:记录$message->sid用于后续状态查询
}

注意事项

  • 确认phone_nos数组包含phone_no和first_name字段,数据库查询时需同时取出这两个字段
  • 使用模板时,需确保模板通过Twilio合规审核
  • 单独发送时,注意Twilio的API速率限制,批量发送可添加简单的延迟或重试逻辑

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.25 07:36:18