我已经成功地能够在flex的右侧创建一个自定义目录弹出组件,以便转移到外部号码。我已经通过flex手动使用了Voice API,这样做之后,我注意到flex会自动将大多数必要的控件添加到TaskDetailsPanel> ParticipantCanvas和TaskDetailsButtons中。唯一缺少的部分是ParticipantCanvas中的挂断按钮。我如何自己创建它们,直到可能时仍使用默认提供的控件?
我还注意到与会者2的静音按钮可以正常工作,只是它只是使错误的与会者1静音。(1是添加到会议中的第一个呼叫者) 我不一定需要本机Flex具有的“切换”功能来进行热传输。我只是具有静音功能,并删除参加者的能力。
在这里,它链接到v1.11以来内置在flex中的热传递的价值所在
https://www.twilio.com/docs/flex/warm-transfer-end-user-guide
我最终将使用此本机转接功能,但是现在我只需要转接到外部号码,以便可以逐步推出。
我认为可行的一种方法是侦听语音任务属性的更改,特别是
task.attributes.conference
如何监视任务属性的更改并做出相应的响应?
我看到我可以按此处所述调用'KickParticipant'。
https://www.twilio.com/docs/flex/actions-framework
只需弄清楚如何添加对除我本人以外的每个参与者都有引用的UI控件(因为技术上有3个参与者)。希望这可以在现有TaskDetailsPanel中实现,这样我就不必完全重写TaskDetailsPanel或TaskDetailsButtons。
更新: 我已经能够成功创建一个踢参与者的twilio函数。我有可用的版本时,会更新最新消息。既然有1个以上的参与者,还需要弄清楚如何为每个参与者添加踢按钮吗?
答案 0 :(得分:0)
我现在可以通过将其放置在插件中找到解决方案。
const liveParticipantCountGreaterThan2 = (props) => {
return props.task && props.task.conference && props.task.conference.liveParticipantCount > 2;
};
flex.DefaultTaskChannels.Call.addedComponents = [{
target: "CallCanvasActions",
component: <CustomCancelTransferButton key="someKeyName" />,
options: { if: liveParticipantCountGreaterThan2 }
}];
不过,最好为每个参与者添加挂断按钮,但可能还要添加另一个迭代。