为了账号安全,请及时绑定邮箱和手机立即绑定

如何设置 twilio taskrouter 出站呼叫?

如何设置 twilio taskrouter 出站呼叫?

PHP
慕容森 2021-11-05 16:10:13
我正在尝试通过 Twilio 任务路由器设置传出呼叫。我正在通过 PHP 创建具有所有必要属性(instruction、to、from、post_work_activity_sid)的任务,但创建的任务没有在 twilio 客户端和外部电话号码之间建立呼叫。我希望程序创建的任务能够在工作人员(浏览器)和外部客户端之间创建电话会议。我不断收到如下所示的错误。我在我的应用程序服务器上有一个分配 php,它使对我的工作人员(浏览器客户端)的调用出队。目前,通过任务路由器从外部号码到浏览器客户端的来电正在按预期工作。但是,出站调用会生成一个任务并分配一个预留,但 Twilio 无法将调用出队到工作人员。有没有办法为语音呼叫创建任务,以便使用 Twiml Enqueue 动词创建任务?或者是否有更好的方法使用 Twilio taskrouter 处理出站呼叫,以便使用浏览器客户端将呼叫成功分配给工作人员?根据此线程:Can outbound call be made through Twilio TaskRouter,我尝试使用指令调用。我还浏览了文档和另一篇关于赋值回调 URL 的堆栈溢出帖子,但不清楚并且不确定我可能会做什么错误的。错误消息:出队指令只能在使用 TwiML 动词创建的任务上发出<?phprequire_once('TwilioVendor/autoload.php'); // Loads the libraryuse Twilio\Rest\Client;$sid    = "ACxxxxxxxxxxxxxxxxxxxxxxx";$token  = "xxxxxxxxxxxxxxxxxxxxxxxxxxx";try{$twilio = new Client($sid, $token);$task = $twilio->taskrouter->v1- >workspaces("WSxxxxxxxxxxxxxxxxxxxxxxxxxxxx")->tasks- >create(array("attributes" => json_encode(array(//"instruction"=>"accept",//"instruction"=>"conference","instruction"=>"call","to"=> "client:Bob","from"=> "+61123456789","post_work_activity_sid"=> "WAxxxxxxxxxxxxxxxxxxxx")),"workflowSid" => "WWxxxxxxxxxxxxxxxxxx"));}catch(Exception $e){echo 'Caught exception: ',  $e->getMessage(), "\n";}print($task->sid);**Assignment Callback code**   <?php$assignment_instruction = ['instruction' => 'call','to'=> 'client:Bob','from' => '+61xxxxx','url'=>'CRM REST END POINT'];header('Content-Type: application/json');echo json_encode($assignment_instruction);**CRM REST END POINT TWIML**<?phprequire __DIR__ . '/vendor/autoload.php';require_once 'TwilioVendor/autoload.php'; use Twilio\Twiml;$reservationSid= $_REQUEST['rsid']header('Content-Type: text/xml');?><?xml version="1.0" encoding="UTF-8"?><Response><Say voice="woman">You will now be connected to the customer</Say><Dial><Queue reservationSid="<?$reservationSid?>"/></Dial></Response> 
查看完整描述

1 回答

?
青春有我

TA贡献1784条经验 获得超8个赞

Twilio 开发人员布道者在这里。

TaskRouter 只会在<Enqueue>TwiML动词创建任务时生成对您的工作人员的调用。使用 REST API 创建任务,即使添加了调用属性,在使用dequeueorcall指令时也不会生成调用。

相反,您需要管理任务并给自己打电话。当您的工作人员收到预订并接受它时,您应该使用 REST API 创建呼叫,将其连接到您的浏览器客户端,然后拨出给最终用户。


查看完整回答
反对 回复 2021-11-05
  • 1 回答
  • 0 关注
  • 128 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信