Twilio功能 - 短信屏蔽

时间:2017-08-29 05:44:30

标签: node.js sms twilio

您好我对Twilio很新,但我试图查找如何回答这个问题。我想用Twilio函数来解决我的问题。我想知道两个人是否有可能互相发送短信而不会泄露他们的任何一个号码。

我希望每对只有一个新数字。

我想象它将通过条件陈述,其中人X向twilio号发送消息而Y人接收消息,反之亦然。我认为由于这个条件语句,这不能用twiML箱子来完成。

感谢您的关注。

2 个答案:

答案 0 :(得分:2)

Twilio开发者传道者在这里。

你绝对可以用Twilio Functions来做到这一点。这是一个使用数字来屏蔽两个呼叫者之间的SMS消息的简单示例。

class NumberMapping {
  constructor() {
    this.mapping = {};
  }

  addMaskedPair(numberA, numberB, twilioNumber) {
    if (!this.mapping[twilioNumber]) {
      this.mapping[twilioNumber] = {};
    }
    this.mapping[twilioNumber][numberA] = numberB;
    this.mapping[twilioNumber][numberB] = numberA;
  }

  findNumber(from, to) {
    const numberPairs = this.mapping[to];
    if (!numberPairs) { return undefined; }
    return numberPairs[from];
  }
}

const numberMapping = new NumberMapping();
numberMapping.addMaskedPair('+1234567890', '+1098765432', '+1203948576');

exports.handler = function(context, event, callback) {
  const to = numberMapping.findNumber(event.From, event.To);
  if (typeof to !== 'undefined') {
    const response = new Twilio.twiml.MessagingResponse();
    response.message({ from: event.To, to: to }, event.Body);
    callback(null, response);
  } else {
    callback(new Error(`Number mapping couldn't be found for sender ${event.From} and Twilio number ${event.To}.`));
  }
};

我们的想法是创建一个NumberMapping对象,该对象在两个外部数字和Twilio数字之间进行映射。您可以使用以下命令添加映射:

numberMapping.addMaskedPair(firstNumber, secondNumber, twilioNumber);

然后当你需要检索一对中的其他号码时,你可以调用

numberMapping.findNumber(number, twilioNumber);

其余的只是返回TwiML的功能。

注意,您只需要与具有最大关系集的数字的关系一样多的Twilio数字。

让我知道这是否有帮助。

答案 1 :(得分:0)

您需要从twilio购买一个号码,然后使用节点JS代码来发送和接收短信。您也可以发送语音留言。 twilio的问题是,当您收到消息时,twilio将其保存到其网站,因此您必须访问网站并使用您的帐户明确检查。

您可以使用this link

创建帐户并接收消息

Here是一些关于如何发送消息的教程,你必须选择node.JS选项。