2017-02-02 116 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將在StatusCallbackEvent中指定的每個呼叫事件上發送異步webhook請求。

當Twilio向您提供的URL發送此請求時,它將通過following variables。然後,您可以使用這些變量來獲取有關您的呼叫的所有信息。其中一個變量稱爲CallDuration,這是剛剛完成的呼叫的持續時間(秒)。

您還可以在this blog post中瞭解有關狀態回調事件的更多信息。

希望這可以幫到你