Twilio 函数 - 短信屏蔽

Twilio Functions - SMS masking

你好,我是 Twilio 的新手,但我试图查找如何回答这个问题。我想使用 Twilio Functions 来解决我的问题。我想知道是否可以让两个人在不透露任何一个号码的情况下互相发送短信。

我希望每对只用一个新号码来做到这一点。

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

感谢您的关注。

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

您可以使用 this link

创建帐户并接收消息

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

此处为 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);

剩下的只是 return TwiML 的函数。

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

如果有帮助请告诉我。