メニュー

Expand
Rate this page:

Thanks for rating this page!

We are always striving to improve our documentation quality, and your feedback is valuable to us. How could this documentation serve you better?

Prevent Blocked Numbers from Calling Your Application

Prevent blocked numbers from calling your application. This application would require you to upload a private asset.

// Description
// Prevent blocked numbers from calling your application
// Host blocklist.json as a private Twilio asset

const fs = require('fs');

exports.handler = function (context, event, callback) {
  let twiml = new Twilio.twiml.VoiceResponse();

  // Phone numbers in blocklist.json file are rejected
  // blocklist.json is uploaded to Twilio Assets as a private asset
  // Format of blocklist.json is plain text:
  // ["+14075550100", "+18025550100"]

  let fileName = '/blocklist.json';
  let file = Runtime.getAssets()[fileName].path;
  let text = fs.readFileSync(file);
  let blocklist = JSON.parse(text);
  let blocked = true;

  if (blocklist.length > 0) {
    if (blocklist.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('https://demo.twilio.com/welcome/voice/');
  }

  return callback(null, twiml);
};
Rate this page:

ヘルプが必要ですか?

誰しもが一度は考える「コーディングって難しい」。そんな時は、お問い合わせフォームから質問してください。 または、Stack Overflow でTwilioタグのついた情報から欲しいものを探してみましょう。