使用Nexmo PHP Laravel进行Web浏览器音频调用



我想从web应用程序(PHP/Laravel(呼叫(购买的Nexmo号码(中的任何手机号码。这就像一个双向通信电话。

该场景假设在web应用程序(PHP/Laravel(页面中显示放置调用图标的调用驱动程序选项。一旦客户点击呼叫图标,然后拨打(购买的Nexmo号码(的司机号码。

我已经使用这个API创建了一个调用。

$ncco = [
[
'action' => 'talk',
'voiceName' => 'Joey',
'text' => 'This is a text-to-speech test message.'
]
];
$call = new NexmoCallCall();
$call->setTo('XXXXXXXXXXXX')
->setFrom('XXXXXXXXXXXX')
->setNcco($ncco);
$response = $client->calls()->create($call);
echo $response->getId();

Nexmo Voice API这里的单向通信只对我有效。例如,文本到语音呼叫对我有效,上面的语音API代码运行呼叫自动到达目的地号码(购买Nexmo号码(。

有人做过这种场景吗?当你点击电话图标时,它会呼叫客户+你可以使用门户网站与客户交谈吗?

有两种方法。

呼叫桥接

你可以让系统给你打电话,把两个号码连接在一起,如果你接了电话,就给其他人打电话把它们连接起来。这一切都可以在服务器端完成,就像你上面的一样,NCCO只是略有变化。

$ncco = [
[
'action' => 'connect',
'endpoint' => [
[
'type' => 'phone',
'number' => DRIVER_NUMBER
]
]
]
];
$call = new NexmoCallCall();
$call->setTo(CUSTOMER_NUMBER)
->setFrom(VONAGE_NUMBER)
->setNcco($ncco);
$response = $client->calls()->create($call);
echo $response->getId();

唯一真正的问题是用户体验。用户可能期望该呼叫像真正的电话一样工作(点击按钮,听到铃声,希望驱动程序连接(。你需要添加一些额外的NCCO选项,比如流式传输铃声、检查对方是否拒绝通话或从未接听电话并做出适当回应等,但这可以通过推送一些NCCO并观看语音事件来完成。

浏览器内/应用程序内

另一个选项是我们的客户端SDK,可用于前端JavaScript、iOS和Android。这可以用于从浏览器或应用程序进行调用,功能相同,但在专用界面内。简短教程可在https://developer.nexmo.com/client-sdk/tutorials/app-to-phone/introduction/javascript.

最新更新