为了账号安全,请及时绑定邮箱和手机立即绑定

Twilio - 如何通过每个电话号码发送不同正文的批量短信?

Twilio - 如何通过每个电话号码发送不同正文的批量短信?

眼眸繁星 2021-11-18 21:11:52
我平均有 100 - 1500 个电话号码要向其发送短信。我想在正文中包含与每个电话号码相关联的人名。我如何才能使用 Twilio 做到这一点?client.notify.services(notifyServiceSid).notifications.create({toBinding: JSON.stringify({  binding_type: 'sms', address: process.env.NUMBER_ONE,  binding_type: 'sms', address: process.env.NUMBER_TWO}),body: 'This should work!' //I want to dynamically change this per number.}).then(notification => console.log(notification.sid)).catch(error => console.log(error));
查看完整描述

1 回答

?
富国沪深

TA贡献1790条经验 获得超9个赞

有很多方法可以做到。


一个例子:


文件: broadcast.js


require('dotenv').config();


const twilio = require('twilio')(

  process.env.TWILIO_ACCOUNT_SID,

  process.env.TWILIO_AUTH_TOKEN

);

const template = "Hello {name}, test message";


(async () { 

  const records = [

    {number: "+1234567890", name: "Someone Someonesky"},

    {number: "+1234567891", name: "NotSomeone Someonesky"},

    ...

  ];


  const chunkSize = 99; // let's not overflow concurrency limit: 100

  for (let i = 0, j = records.length; i < j; i += chunkSize) {

    await Promise.all(

      records

        .slice(i, i + chunkSize)

        .map(

          record => {

            const {number, name} = record;


            // copying template to variable

            const body = template.toString();


            // replacing placeholder {name} in template 

            // with name value from object 

            body = body.replace(/\{name\}/g, name);


            return twillio.messages.create({

              to: number,

              from: process.env.TWILIO_NUMBER,

              body

            });

          }

        )

    );

  }

})();

文件: .env


TWILIO_ACCOUNT_SID=some-sid

TWILIO_AUTH_TOKEN=some-token 

TWILIO_NUMBER=+3333333

安装依赖:


npm i --save twilio

npm i --save dotenv

跑:


node broadcast.js


查看完整回答
反对 回复 2021-11-18
  • 1 回答
  • 0 关注
  • 204 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信