You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将Twilio虚拟黑名单Function接入Studio Flow实现呼入拦截

Twilio 虚拟黑名单接入Studio Flow配置指南

第一步:修正现有Function代码的语法错误

你当前提供的代码存在多余双引号的语法问题,先修正为以下内容:

exports.handler = function(context, event, callback) {
  // 所有拉黑号码使用E.164格式,用逗号分隔
  let numberBlock = event.block || [ "+11234567896" ];  
  let twiml = new Twilio.twiml.VoiceResponse();
  let blocked = true;
  if (numberBlock.length > 0) {
    if (numberBlock.indexOf(event.From) === -1) {
      blocked = false;
    }
  }
  if (blocked) {
    // 拉黑号码直接拒接
    twiml.reject();
    callback(null, twiml);
  } else {
    // 非拉黑号码返回状态给Studio走后续流程
    callback(null, {blocked: false});
  }
};

注:原代码中的重定向逻辑可删除,直接在Studio Flow内根据Function返回结果走分支即可,避免出现循环调用问题。

第二步:Studio Flow 流内配置步骤

你当前规划的Trigger > 运行VirtualBlockList函数 > 后续呼入处理流程架构是正确的,按以下步骤配置即可:

  • 拖动「Run Function」组件到画布,连接到Incoming Call触发器的出口
  • 点击Run Function组件,在配置面板选择你已经部署完成的VirtualBlockList函数
  • 可选配置:如果需要在流内动态传入拉黑号码列表,可以在Function Parameters区域添加参数,key填写block,value填写你的E.164格式号码数组
  • 连接Run Function组件的「Success」出口到「Split Based On...」组件,选择判断条件为widgets.<你的Run Function组件名>.parsed.blocked
    • 当条件等于true时,直接连接到「Hang Up」组件结束通话即可
    • 当条件等于false时,连接到你原本的后续呼入处理流程即可
  • 保存并发布Studio Flow,将该Flow绑定为你的Twilio号码的呼入触发入口即可生效

配置参考截图

ConfigFlowFunction

测试验证方法

  • 使用拉黑列表内的号码拨打Twilio号码,会直接被拒接,不会进入后续流程
  • 使用非拉黑号码拨打,会正常进入你配置的后续呼入处理流程

内容的提问来源于stack exchange,提问作者Tayla Belville

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 23:15:00