技術詳細
注: このセクションでは、以下のことを説明する。 アプリケーション V2 機能性だ。
Vonage API アプリケーションには、Vonage エンドポイントに接続し、Vonage API を使用するために必要なセキュリティおよび設定情報が含まれています。
例えば、Voice API、Messages API、RTC APIを使用するアプリケーションを作成することができます。

Vonageアプリケーションの使い方を説明するために、Vonage音声アプリケーションの作成と使用について簡単にまとめました:
- CLI、ダッシュボードまたはアプリケーションAPIを使用してVonageアプリケーションを作成します。
- ウェブフックURLを設定してください。VonageはこれらのURLに重要な情報をコールバックします。
- VonageアプリケーションにVonage番号を関連付けます。
- ウェブアプリケーションを作成します。必要に応じてVonage APIを使用して、ステップ2で設定したWebhookエンドポイントを実装します。
例えば、以下のようなアプリケーションを作りたい場合、次のようにします。 インバウンドコールを転送する を宛先の電話機に転送するには、以下の手順を実行します:
- 音声機能を持つVonageアプリケーションを作成します。
- アンサーとイベントのウェブフックURLを設定します。
- Vonage番号とVonageアプリケーションを関連付けます。
- あなたは、Webhook URLのコールバックに応答するWebアプリケーションを実装します。
- Vonageアプリケーションに関連付けられているVonage番号に着信コールが発信されると、Vonageアプリケーションに関連付けられたVonage番号に着信コールが発信されます。 エヌシーシーオー が返される。
answer_url.
メッセージやディスパッチ機能を持つアプリケーションなど、他のタイプのアプリケーションは、本書の関連するセクションで説明されている、少し異なるプロセスを持ちます。 ドキュメンテーション.
以下のセクションでは、Vonageのアプリケーションについて詳しく説明します。
構造
各アプリケーションには以下のものがある:
| 名称 | 説明 |
|---|---|
id | 各アプリケーションを識別するために使用され、以下のアプリケーションと組み合わせて使用される。 private_key を使用してJWTを生成する。 |
name | アプリケーション名。 |
capabilities | このアプリケーションがサポートする機能の種類を説明します。機能 voice, messages, rtc, vbc.これらの機能は、1つのアプリケーションでいくつでもサポートすることができます。また webhooks を指定します。Vonageは、Webhookエンドポイントを介して情報を送信および取得します。 |
keys | 内容 private_key そして public_key.秘密鍵は、Vonage APIへのコールを認証するために使用されるJWTを生成するために使用します。公開鍵は、Vonage APIへのリクエストでJWTを認証するためにVonageによって使用されます。 |
能力
Vonageアプリケーションは、Voice、Messages and Dispatch、Conversation、Client SDKなど、さまざまなAPIを使用できます。
アプリケーションを作成する際に、アプリケーションにサポートさせたい機能を指定することができます。それぞれのケイパビリティに対して、どのようなケイパビリティが欲しいかによってウェブフックを設定することができます。 rtc 機能を使えば、RTCイベントを受信するためのイベントURLを指定することができる。アプリケーションで voice また、応答URLを設定して、通話に応答したWebhookを受信したり、応答URLに失敗した場合のフォールバックURLを設定したり、別のイベントURLを設定して、音声通話関連のイベントを受信したりすることもできます。
能力の概要は以下の通り:
| 能力 | 説明 |
|---|---|
voice | 音声機能をサポートするために使用される。 |
messages | Messages API および Dispatch API 機能のサポートに使用されます。 |
rtc | WebRTC機能をサポートするために使用される。通常、Client SDKと一緒に使用します。 |
vbc | 価格決定に使用されるが、現在のところ他の機能はない。 |
ウェブフック
アプリケーションを作成するときに提供する Webhook URL は、必要なアプリケーション機能によって異なります。次の表は、Webhook をまとめたものです:
| 能力 | 使用API | ウェブフックが利用可能 |
|---|---|---|
voice | 声 | answer_url, fallback_answer_url, event_url |
messages | メッセージと派遣 | inbound_url, status_url |
rtc | Client SDK | event_url |
vbc | VBC | なし |
ウェブフックの種類
次の表は、ケイパビリティごとに利用可能なWebhookについて説明したものです:
| 能力 | ウェブフック | API | 例 | 説明 |
|---|---|---|---|---|
voice | answer_url | 声 | https://example.com/webhooks/answer | 通話発信/着信時にVonageがリクエストするURL。NCCOを返さなければならない。 |
voice | fallback_answer_url | 声 | https://example.com/webhooks/fallback | もし fallback_answer_url がセットされている場合、Vonageはそのリクエストに対して answer_url がオフラインであるか、HTTPエラーコードを返すか、あるいは event_url がオフラインかエラーコードを返し、イベントがNCCOを返すことが期待されている。その fallback_answer_url はNCCOを返送しなければならない。もし fallback_answer_url 最初のNCCOを2回試みても失敗した場合、通話は終了する。あなたの fallback_answer_url 進行中の通話を2回試行した後に失敗した場合、通話フローは継続される。 |
voice | event_url | 声 | https://example.com/webhooks/event | VonageはこのURLにコールイベント(呼び出し音、応答済みなど)を送信します。 |
messages | inbound_url | メッセージ, 派遣 | https://example.com/webhooks/inbound | Vonageは受信メッセージをこのURLに転送します。 |
messages | status_url | メッセージ, 派遣 | https://example.com/webhooks/status | Vonageはメッセージのステータスアップデートを送信します、 delivered, seen)をこのURLに追加する。 |
rtc | event_url | Client SDK, 会話 | https://example.com/webhooks/rtcevent | VonageはこのURLにRTCイベントを送信します。 |
vbc | なし | 音声エンドポイント | なし | 未使用 |
ウェブフックのタイムアウト
については voice 機能のみで、ウェブフックにタイムアウトを設定することができます。指定できるタイムアウトは2つあります: connection_timeout そして socket_timeout.これらのパラメータは answer, eventそして fallback webhooks はミリ秒単位で指定されます。以下の表に詳細を示す:
| パラメータ | 例 | 説明 |
|---|---|---|
connection_timeout | 1000 | Vonage がこの指定された時間の間 Webhook URL に接続できない場合、Vonage は Webhook エンドポイントへの接続をさらに 1 回試みます。これはミリ秒単位の整数値です。 |
socket_timeout | 3000 | この指定された時間の間、Webhook URLからの応答が読み取れない場合、VonageはWebhookエンドポイントの読み取りをさらに1回試みます。これはミリ秒単位の整数値です。 |
アプリケーションを作成または更新する際に、これらを直接設定したり、必要に応じて更新したりすることができます:
...
"capabilities": {
"voice": {
"webhooks": {
"answer_url": {
"address": "https://example.com/webhooks/answer",
"http_method": "POST",
"connection_timeout": 500,
"socket_timeout": 3000
},
"fallback_answer_url": {
"address": "https://fallback.example.com/webhooks/answer",
"http_method": "POST",
"connection_timeout": 500,
"socket_timeout": 3000
},
"event_url": {
"address": "https://example.com/webhooks/event",
"http_method": "POST",
"connection_timeout": 500,
"socket_timeout": 3000
}
}
}
...
アプリケーションの作成または更新時にこれらの値が指定されない場合、デフォルト値が適用されます。これらのタイムアウトのデフォルト値は、次の表に示すように、関連するウェブフックによって異なります:
| ウェブフック | デフォルト connection_timeout | デフォルト socket_timeout |
|---|---|---|
answer | 1000 | 5000 |
event | 1000 | 10000 |
fallback | 1000 | 5000 |
注: タイムアウトはミリ秒単位で指定する。
ウェブフックのタイムアウトについては ウェブフック・ドキュメント.
アプリケーションの作成
アプリケーションを作成するには、主に4つの方法があります:
- ヴォネージでは ダッシュボード.アプリケーションは、次のように表示されます。 アプリケーション ダッシュボードの
- を使用している。 Vonage CLI.
- を使用している。 アプリケーションAPI.
- Vonageのいずれかを使用する サーバーSDK.
CLIを使用したアプリケーションの管理
コード・スニペット
- Application / アプリケーション
- Application / アプリケーションの作成
- Application / アプリケーションの削除
- Application / アプリケーションの更新
- Application / アプリケーション一覧
- User / ユーザー
- User / ユーザーの作成
- User / ユーザーの削除
- User / ユーザーの更新
- User / ユーザー一覧