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

如何在创建Twilio Conference时调用find_employee函数?

解决Twilio来电创建会议时调用find_employee函数的问题

你遇到的核心问题是:Conference TwiML没有直接触发外部函数的参数,但我们可以通过在处理主叫请求的同时异步调用find_employee函数来实现呼叫员工加入会议的需求,具体方案如下:

实现思路

  1. 主叫来电后,先返回TwiML让其进入处于等待状态的会议(设置startConferenceOnEnter: false)
  2. 在返回TwiML的同时,异步调用find_employee函数,主动发起对员工的呼叫
  3. 员工被接通后,通过TwiML接入同一个会议,并设置startConferenceOnEnter: true触发会议启动,让主叫与员工互通

修改后的完整代码

const OVERNIGHT_IVR_INPUT_HANDLER_FUNCTION_NAME = '/overnight-vp/ivr-handler';
// 初始化Twilio客户端
const twilioClient = require('twilio')(context.ACCOUNT_SID, context.AUTH_TOKEN);

// 实现find_employee函数:批量呼叫员工并接入指定会议
async function find_employee(conferenceName) {
  // 替换为实际的员工号码列表
  const employeeNumbers = ['+1234567890', '+0987654321'];
  
  for (const number of employeeNumbers) {
    try {
      await twilioClient.calls.create({
        to: number,
        from: context.TWILIO_PHONE_NUMBER, // 替换为你的Twilio号码
        // 生成员工接入会议的TwiML
        twiml: `<Response><Dial><Conference startConferenceOnEnter="true">${conferenceName}</Conference></Dial></Response>`
      });
      console.log(`已发起对员工 ${number} 的呼叫`);
    } catch (error) {
      console.error(`呼叫员工 ${number} 失败:`, error);
    }
  }
}

exports.handler = async function (context, event, callback) {
  const twiml = new Twilio.twiml.VoiceResponse();
  
  twiml.say('请稍等,我们正在为您连接应急系统。');
  
  const dial = twiml.dial();
  dial.conference('test-conference', {
    startConferenceOnEnter: false, // 主叫进入后不启动会议
    record: 'record-from-start',
    waitUrl: 'http://twimlets.com/holdmusic?Bucket=com.twilio.music.classical' // 主叫等待时的音乐URL
  });

  // 异步调用find_employee,不阻塞TwiML返回给主叫
  find_employee('test-conference').catch(error => {
    console.error('调用员工呼叫逻辑失败:', error);
  });

  callback(null, twiml);
};

关键说明

  • 无需依赖Conference TwiML的特殊参数,通过主动发起呼叫的方式实现员工接入
  • 异步执行find_employee确保主叫不会等待,立即进入会议等待状态
  • 员工端的Conference设置startConferenceOnEnter: true,保证第一个员工接入时会议自动启动
  • waitUrl可替换为自定义的等待音频URL,提升用户体验

内容的提问来源于stack exchange,提问作者Haiz Ans

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.02 00:07:50