将正在进行的Twilio语音通话合并到Twilio视频室

时间:2020-07-04 21:23:20

标签: php laravel twilio twilio-php twilio-video

我运行了以下系统,但随后它停止了,我们无法找出原因。

我们经营一个twilio会议室:“演示室”

然后我们分别从twilio client:user_1到某个号码555-555-5555发起语音呼叫。通话正在进行中。现在,我们希望将555-555-5555合并到Twilio会议室的“ Demo会议室”中。

当我们运行下面的功能mergeCallToRoom时,我们得到200状态,并且呼叫被标记为已完成,但用户未合并到会议室中。如果我想重定向它或其他任何东西,它都可以正常工作。 48小时前,它也运行良好。我们甚至回滚到它在工作,测试或本地环境中都可以正常工作时所拥有的代码。

public function mergeCallToRoom($roomName,$parentCallSid,$participantID)
{

  
    $twilio = $this->twilioConnect();

    $calls = $twilio->calls->read(array(
        "parentCallSid" => $parentCallSid
    ));

    /** @var CallInstance $call */
    foreach($calls as $call){
        $call->update([
                    "twiml" => "<Response><Connect><Room participantIdentity='$participantID'>".$roomName."</Room></Connect></Response>"
                ]
            );

    }
}

更多信息:

有趣的是,几周前我们实际上从下面的代码开始,我们喜欢它,除了我们意识到我们听不到振铃或无法绕过电话树。因此,以下代码仍可用于合并调用。

public function dialIntoRoom(Request $request)
{
    $phoneNumberToDial = $request->input('number');
    $roomName = $request->input('roomName');

    $verifiedNumber = null;
    $from = config('services.twilio.number');


    $twilio = $this->twilioConnect();
    $call = $twilio->calls
        ->create($phoneNumberToDial, // to
            $from, // from
            [
                "twiml" => "<Response><Connect><Room participantIdentity=\"$phoneNumberToDial\">$roomName</Room></Connect></Response>"
            ]
        );


    return response()->json(['status' => 'ok']);
}

0 个答案:

没有答案