twilio 使用电话号码黑名单拒绝来电



首先。很抱歉英语是我的第二语言,所以我对任何错误表示歉意。 第二。我是Twilio新手.

提前感谢您的所有帮助。

我有多个Twilio电话号码,我正在尝试对我的所有电话号码实施号码黑名单。目前,我单独使用波纹管功能与我所有的Twilio数字。因此,理想情况下,我想创建一个包含所有我想列入黑名单的电话号码的文件,我可以在函数中读取此文件,而无需在单个函数中写入列入黑名单的号码。

exports.handler = function(context, event, callback) {
// List all blocked phone numbers in quotes and E.164 formatting, separated by a comma
let blacklist = event.blacklist || [ "blacklist numbers","XXXXXXXXXX","XXXXXXXXX" ];  
let twiml = new Twilio.twiml.VoiceResponse();
let blocked = true;
if (blacklist.length > 0) {
if (blacklist.indexOf(event.From) === -1) {
blocked = false;
}
}
if (blocked) {
twiml.reject();
}
else {
// if the caller's number is not blocked, redirect to your existing webhook
twiml.redirect("XXXXXX");
}
callback(null, twiml);
};

谢谢。

你可以有类似于下面的代码。然后,您可以将 blacklist.json 作为私有资产上传到您的 Twilio 资产。读取私有资产的代码显示在 Twilio 文档读取资产内容下。

blacklist.json 的格式只是一个 JSON 数组:["+14071234567"、"+18021234567"]

const fs = require('fs');
exports.handler = function(context, event, callback) {
let fileName = 'blacklist.json';
let file = Runtime.getAssets()[fileName].path;
let text = fs.readFileSync(file);
let blacklist = JSON.parse(text);
console.log(blacklist);
let twiml = new Twilio.twiml.VoiceResponse();
let blocked = true;
if (blacklist.length > 0) {
if (blacklist.indexOf(event.From) === -1) {
blocked = false;
}
}
if (blocked) {
twiml.reject();
}
else {
// if the caller's number is not blocked, redirect to your existing webhook
twiml.redirect("XXXXXX");
}
callback(null, twiml);
};

最新更新