2017-02-02 4 views
1

Мне было интересно узнать, удалось ли отслеживать статус активного вызова с помощью twilio. Я пытаюсь сделать это, используя следующий код:Следите за статусом активного вызова - Twilio

Map<String, String> callParams = new HashMap<String, String>(); 
callParams.put("To", "***********"); 
callParams.put("From", "***********"); 
callParams.put("Url", "https://**************/"); 
callParams.put("Method", "GET"); 
Call call = null; 
try { 
    call = callFactory.create(callParams); 
    System.out.println("Call was " + call.getDuration() + " long."); 
    System.out.println("Status " + call.getStatus());    
} catch (TwilioRestException ex) { 
    System.out.println(ex); 
} 

Два заявления печати после вызова является попыткой получения статуса вызова (ответил, завершенный и т.д.), но они в настоящее время производят утратившим очередь соответственно.

Возможно ли вообще отслеживать статус вызова или даже получить статус продолжительности в конце вызова, а не в начале вызова.

ответ

0

Twilio разработчик евангелист здесь. Причина, по которой вы получаете нуль во время разговора, состоит в том, что мы только сможем сообщить о продолжительности звонка, когда звонок был завершен. Как вы сказали, вы смотрите на вызов, который все еще поставлен в очередь, так как вы только что инициировали запрос.

Мы предлагаем call status callback, хотя, похоже, именно то, что вы хотите.

Когда вы начинаете новый звонок, вы можете пройти несколько optional parameters. Один из них называется StatusCallback и является URL-адресом, который Twilio будет отправлять асинхронным запросам webhook для каждого события вызова, указанного в StatusCallbackEvent.

Когда Twilio делает этот запрос по указанному вами URL-адресу, он передает following variables. Затем вы можете использовать эти переменные, чтобы получить всю информацию о вашем вызове. Одна из таких переменных называется CallDuration, которая представляет собой продолжительность в секундах только что выполненного вызова.

Вы также можете узнать больше о статусных событиях обратного вызова в this blog post.

Надеюсь, это вам поможет