Как интегрировать аудиозвонок (от пользователя к пользователю) с помощью API twilio?

Я хочу интегрировать функцию аудиозвонка от пользователя к пользователю с помощью Twilio API, возможно ли это в Twilio? если да, не могли бы вы предоставить учебник.

Здесь я добавил код:
1. Для получения токена из Twilio

$.post(url, function(data) {      
 // Set up the Twilio Client Device with the token
    Twilio.Device.setup(data.token);
});

и он возвращает токен, используя функцию

public function newToken(Request $request, ClientToken $clientToken)
    {
        $forPage = $request->input('forPage');
        $twilio = config('services.twilio');
        $applicationSid = $twilio['applicationSid'];
        $clientToken->allowClientOutgoing($applicationSid);

        if ($forPage === route('dashboard', [], false)) {
            $clientToken->allowClientIncoming('support_agent');
        } else {
            $clientToken->allowClientIncoming('customer');
        }

        $token = $clientToken->generateToken();
        return response()->json(['token' => $token]);
    }

Когда я делаю вызов после запуска функции javascript

function callCustomer(phoneNumber) {
    updateCallStatus("Calling " + phoneNumber + "...");

    var params = {"phoneNumber": phoneNumber};
    Twilio.Device.connect(params);
}

а затем браузер запрашивает включение микрофона и после разрешения воспроизводит небольшой звук, говорящий, что "Произошла ошибка приложения, до свидания!".


person Dev Ramesh    schedule 14.05.2018    source источник
comment
Вы хотите сделать это через приложение, в веб-браузере или просто через телефоны пользователей? Вы также отметили этот звонок по клику. Должно ли это быть частью этой функции?   -  person philnash    schedule 14.05.2018
comment
Нам нужно только позвонить из браузера на телефон пользователя. Возможно ли это?   -  person Dev Ramesh    schedule 14.05.2018
comment
Конечно, на сайте Twilio есть учебные пособия для достижения этой цели. Взгляните на это, чтобы звонить из браузера на телефоны с помощью PHP и Laravel. . Также ознакомьтесь с документацией по использованию JavaScript клиента Twilio.   -  person philnash    schedule 14.05.2018
comment
Я интегрировал вызовы браузера на телефоны с помощью PHP и Laravel, но когда я звоню, он говорит, что произошла ошибка приложения, до свидания! и соединение отклонено   -  person Dev Ramesh    schedule 14.05.2018
comment
Хорошо, что поможет, если вы обновите свой вопрос, указав больше деталей, чтобы я мог помочь решить это с вами. Для начала, не могли бы вы поделиться кодом, который вы используете для ответа с помощью TwiML при совершении звонка?   -  person philnash    schedule 14.05.2018
comment
Я обновил вопрос, а зачем нужен TwiML, мы не можем напрямую поговорить с пользователем?   -  person Dev Ramesh    schedule 14.05.2018


Ответы (2)


Голосовой вызов Twilio, пожалуйста, обратитесь к следующей пошаговой документации QuickStartDemo

person Community    schedule 16.05.2018

Евангелист разработчиков Twilio здесь.

TwiML соединяет исходящий вызов с другим пользователем. Когда вы настраиваете приложение TwiML для исходящих вызовов, вам необходимо установить голосовой URL-адрес. Когда вы совершаете вызов с помощью Twilio.Device.connect, клиент Twilio подключается к Twilio, затем Twilio делает HTTP-запрос к голосовому URL-адресу вашего приложения TwiML, передавая параметры, которые вы отправляете, чтобы узнать, что делать с вызовом.

Вы передаете параметр phoneNumber, поэтому он будет передан вашему приложению. Вы пометили этот вопрос тегом PHP, поэтому вот пример (с использованием библиотеки Twilio PHP) того, что вы могли бы сделать, чтобы набрать номер телефона, который вы передаете.

<?php
require_once './vendor/autoload.php';
use Twilio\Twiml;

$phoneNumber = $_REQUEST['phoneNumber'];

$response = new Twiml();
$dial = $response->dial();
$dial->number($phoneNumber);

echo $response;

Дополнительные сведения см. в документации по клиенту Twilio. о том, как это работает.

person philnash    schedule 14.05.2018