簡體   English   中英

應用程序通話Nexmo

[英]App-to-Phone call Nexmo

我是Nexmo的新手,我正嘗試建立一個應用程序通話。 移動Ionic / Cordova應用程序的用戶通過互聯網發起語音呼叫,電話在PSTN上響鈴。 被叫方回答,雙方都可以講話和收聽。

現在,我已經設置了服務器,並且可以在PSTN上撥打電話,可以接聽電話了,還可以使用NCCO向被叫方說短信。

但是,我無法弄清楚如何在調用方客戶端上處理Nexmo。 如何在應用程序和PSTN之間建立連接? 如何通過Nexmo發送和接收語音交換? 我只能在docs和npm nexmo包中找到使用Text-to-Speech的示例

我的服務器具有Nexmo 文檔中的以下代碼:

 <?php

include 'application_generate_jwt.php';

//Connection information
$base_url = 'https://api.nexmo.com' ;
$version = '/v1';
$action = '/calls';

//User and application information
$application_id = "id-for-your-voice-application";

//Mint your JWT
$keyfile="application_secret_key.txt";

$jwt = generate_jwt($application_id, $keyfile);

//Add the JWT to the request headers
$headers =  array('Content-Type: application/json', "Authorization: Bearer " . $jwt ) ;

//Change the to parameter to the number you want to call
$payload = '{
    "to":[{
        "type": "phone",
        "number": "441632960961"
    }],
    "from": {
        "type": "phone",
        "number": "441632960960"
    },
    "answer_url": ["https://nexmo-community.github.io/ncco-examples/first_call_talk.json"]
}';

//Create the request
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $base_url . $version . $action);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_POSTFIELDS, $payload);

$response = curl_exec($ch);

echo $response;

如果需要更多信息,請告訴我!

使用Nexmo可以使用2種方法來完成此操作,這實際上取決於您是否知道帶有應用程序的設備的電話號碼。

如果是這樣,那么您可以從nexmo撥出每個電話號碼的電話,並將它們都放入一個簡單的會議(在NCCO通話中稱為對話) https://docs.nexmo.com/voice/voice-api/ncco- reference#conversation您只需要確保對話的名稱對於該呼叫是唯一的。

另一種方法是通過代理調用,因此該應用程序啟動一個“ tel:” URL,其中包含一個供客戶呼叫的nexmo電話號碼,然后執行將呼叫連接到目標號碼的NCCO。

這取決於您的用例,哪種模式最適用,在選項1中,您將承擔2個通話費用(每部電話一個),在選項2中,您將承擔一個通話費用,而應用程序用戶有另一個。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM