通話中にDTMFを再生する
このコード・スニペットは、指定された通話にDTMFトーンを再生する。
例
サンプルコードの以下の変数を置き換える:
| キー | 説明 |
|---|---|
VOICE_CALL_ID | The UUID of the call leg. |
VOICE_DTMF_DIGITS | Digits representing the DTMF tones that will be played into the call. |
前提条件
ターミナル・プロンプトで以下のコマンドを実行し、認証用のJWT を作成する:
export JWT=$(nexmo jwt:generate $PATH_TO_PRIVATE_KEY application_id=$NEXMO_APPLICATION_ID)コードを書く
play-dtmf-into-a-call.sh に以下を追加する:
curl -X PUT https://api.nexmo.com/v1/calls/$VOICE_CALL_ID/dtmf \
-H "Authorization: Bearer $JWT"\
-H "Content-Type: application/json"\
-d '{"digits": '"$VOICE_DTMF_DIGITS"'}'コードを実行する
このファイルをあなたのマシンに保存し、実行する:
前提条件
npm install @vonage/server-sdkplay-dtmf-into-a-call.js という名前のファイルを作成し、以下のコードを追加する:
const { Vonage } = require('@vonage/server-sdk');
const vonage = new Vonage({
applicationId: VONAGE_APPLICATION_ID,
privateKey: VONAGE_PRIVATE_KEY,
});コードを書く
play-dtmf-into-a-call.js に以下を追加する:
vonage.voice.playDTMF(VOICE_CALL_ID, VOICE_DTMF_DIGITS)
.then((resp) => console.log(resp))
.catch((error) => console.error(error));コードを実行する
このファイルをあなたのマシンに保存し、実行する:
前提条件
build.gradle に以下を追加する:
implementation 'com.vonage:server-sdk-kotlin:2.1.1'PlayDtmfIntoCall という名前のファイルを作成し、main メソッドに以下のコードを追加する:
val client = Vonage {
applicationId(VONAGE_APPLICATION_ID)
privateKeyPath(VONAGE_PRIVATE_KEY_PATH)
}コードを書く
PlayDtmfIntoCall ファイルのmain メソッドに以下を追加する:
val response = client.voice.call(VOICE_CALL_ID).sendDtmf(VOICE_DTMF_DIGITS)コードを実行する
Gradle用のアプリケーション プラグインを使うことで、アプリケーションの実行を簡単にすることができます。build.gradle を以下のように更新する:
apply plugin: 'application'
mainClassName = project.hasProperty('main') ? project.getProperty('main') : ''以下のgradle コマンドを実行し、com.vonage.quickstart.kt.voice をPlayDtmfIntoCall を含むパッケージに置き換えてアプリケーションを実行する:
前提条件
build.gradle に以下を追加する:
implementation 'com.vonage:server-sdk:9.3.1'SendDtmfToCall という名前のファイルを作成し、main メソッドに以下のコードを追加する:
VonageClient client = VonageClient.builder()
.applicationId(VONAGE_APPLICATION_ID)
.privateKeyPath(VONAGE_PRIVATE_KEY_PATH)
.build();コードを書く
SendDtmfToCall ファイルのmain メソッドに以下を追加する:
var response = client.getVoiceClient().sendDtmf(VOICE_CALL_ID, VOICE_DTMF_DIGITS);
System.out.println(response);コードを実行する
Gradle用のアプリケーション プラグインを使うことで、アプリケーションの実行を簡単にすることができます。build.gradle を以下のように更新する:
apply plugin: 'application'
mainClassName = project.hasProperty('main') ? project.getProperty('main') : ''以下のgradle コマンドを実行し、com.vonage.quickstart.voice をSendDtmfToCall を含むパッケージに置き換えてアプリケーションを実行する:
前提条件
Install-Package Vonageコードを書く
PlayDtmfIntoCall.cs に以下を追加する:
var credentials = Credentials.FromAppIdAndPrivateKeyPath(VONAGE_APPLICATION_ID, VONAGE_PRIVATE_KEY_PATH);
var client = new VonageClient(credentials);
var command = new DtmfCommand() { Digits = VOICE_DTMF_DIGITS };
var response = await client.VoiceClient.StartDtmfAsync(VOICE_CALL_ID, command);前提条件
composer require vonage/clientコードを書く
index.php に以下を追加する:
require_once __DIR__ . '/../../vendor/autoload.php';
$keypair = new \Vonage\Client\Credentials\Keypair(file_get_contents(VONAGE_APPLICATION_PRIVATE_KEY_PATH), VONAGE_APPLICATION_ID);
$client = new \Vonage\Client($keypair);
$client->voice()->playDTMF(UUID, '2468#');
コードを実行する
このファイルをあなたのマシンに保存し、実行する:
前提条件
pip install vonage python-dotenvコードを書く
play-dtmf-into-call.py に以下を追加する:
from vonage import Auth, Vonage
from vonage_voice import CallMessage
client = Vonage(
Auth(
application_id=VONAGE_APPLICATION_ID,
private_key=VONAGE_PRIVATE_KEY,
)
)
response: CallMessage = client.voice.play_dtmf_into_call(
uuid=VOICE_CALL_ID, dtmf=VOICE_DTMF_DIGITS
)
pprint(response)コードを実行する
このファイルをあなたのマシンに保存し、実行する:
前提条件
gem install vonageコードを書く
play-dtmf-into-call.rb に以下を追加する:
client = Vonage::Client.new(
application_id: VONAGE_APPLICATION_ID,
private_key: VONAGE_PRIVATE_KEY
)
response = client.voice.dtmf.send(VOICE_CALL_ID, digits: VOICE_DTMF_DIGITS)コードを実行する
このファイルをあなたのマシンに保存し、実行する:
試してみる
コードを実行すると、一連のDTMFトーンが、指定されたUUIDで識別された通話に再生される。 が再生される。
さらに読む
- 電話会議 - このガイドでは、Vonageが通話に関連付ける2つの概念、レグと会話について説明します。