2013-12-08 63 views
5

我想創建一個服務檯網頁,其中座席可以單擊鏈接啓動對目標號碼的外撥呼叫。我知道如何使用Web客戶端來實現這一目標,但對於沒有帶寬支持VoIP的代理,我希望Twilio撥打代理的電話號碼,然後撥打目標號碼。Twilio在撥打目標號碼前啓動連接座席電話的外撥呼叫

這種體驗非常類似於將Google語音與谷歌聊天/環聊客戶端結合使用 - 谷歌語音呼叫您的號碼/客戶端,然後啓動對目標的呼叫。

此外,如果代理和目標電話號碼都是國內固定電話號碼,這種情況會產生每分鐘2X的固定電話費用嗎?

我不是一直在尋找代碼,而是基於Twilio API和Twiml概念的答案。

回答

10

Twilio福音傳教士在這裏。

聽起來像您正在創建「點擊呼叫」。下面是我們的文檔一些代碼,演示瞭如何做到這一點:

https://www.twilio.com/docs/howto/click-to-call

基本要點有:

使用REST API發起外撥呼叫。當該呼叫被回答時,Twilio將對您在初始REST請求中提到的某個URL發出HTTP請求。該URL的工作是返回包含<Dial>動詞的TwiML,該動詞告訴Twilio撥打第二個電話號碼並將兩個呼叫橋接在一起。

對於美國國內電話,總費用將爲4美分/分鐘。因爲每條腿都被認爲是外運的,所以每條腿都有2美分。見例4此頁上:

https://www.twilio.com/help/faq/voice/how-much-am-i-charged-for-call-forwarding

希望有所幫助。

+0

@Davin第一次通話結束後,是不是僅由twilio服務器調用動作url? –

+0

首先要求代理連接的人不同;將會看到事情是如何運作並回報的 – drewid

0

簡單/直接Twilio呼叫代理 - >呼叫

原始地址:https://www.twilio.com/docs/quickstart/php/rest/call-request#call-end-callback

首先從文件加載瀏覽器:

use Twilio\Rest\Client; 

// Step 2: Set our AccountSid and AuthToken from https://twilio.com/console 
$AccountSid = "SID"; 
$AuthToken = "AuthTok"; 

// Step 3: Instantiate a new Twilio Rest Client 
$client = new Client($AccountSid, $AuthToken); 

try { 
    // Initiate a new outbound call 
    $call = $client->account->calls->create(

     "+12125551111",// connect this number(Agent) 

     // that you've purchased or verified with Twilio. 
     "+12135554646",// caller id for call 

     // Set the URL Twilio will request when the call is answered. 
     array("url" => "http://example.com/call_them.php") 

    ); 
    echo "Started call: " . $call->sid; 
} catch (Exception $e) { 
    echo "Error: " . $e->getMessage(); 
} 

call_them.php:

<?php 
header("content-type: text/xml"); 
echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"; 
//inside dial.. actual number you want to reach 
?> 
<Response> 
<Dial>+18185556363</Dial> 
</Response>