アプリケーションの作成
このコード・スニペットでは、Applicationsを作成する方法を説明します。
例
以下の置換可能な値が、便利な方法でサンプルコードに設定されていることを確認する必要があります:
| キー | 説明 |
|---|---|
VONAGE_API_KEY | Your Vonage API key (see it on |
VONAGE_API_SECRET | Your Vonage API secret (also available on |
コードを書く
create-application.sh に以下を追加する:
curl -X "POST" "https://api.nexmo.com/v2/applications" \
-H 'Content-Type: application/json' \
-u "$VONAGE_API_KEY:$VONAGE_API_SECRET" \
-d $'{
"name": "Code Snippets V2 Application",
"capabilities": {
"messages": {
"webhooks": {
"inbound_url": {
"address": "https://example.com/webhooks/inbound",
"http_method": "POST"
},
"status_url": {
"address": "https://example.com/webhooks/status",
"http_method": "POST"
}
}
},
"voice": {
"webhooks": {
"answer_url": {
"address": "https://example.com/webhooks/answer",
"http_method": "GET"
},
"fallback_answer_url": {
"address": "https://fallback.example.com/webhooks/answer",
"http_method": "GET"
},
"event_url": {
"address": "https://example.com/webhooks/event",
"http_method": "POST"
}
}
},
"rtc": {
"webhooks": {
"event_url": {
"address": "https://example.com/webhooks/event",
"http_method": "POST"
}
}
},
"vbc": {},
"verify": {
"webhooks": {コードを実行する
このファイルをあなたのマシンに保存し、実行する:
前提条件
npm install @vonage/server-sdkcreate-application.js という名前のファイルを作成し、以下のコードを追加する:
const { Vonage } = require('@vonage/server-sdk');
const vonage = new Vonage({
apiKey: VONAGE_API_KEY,
apiSecret: VONAGE_API_SECRET,
});コードを書く
create-application.js に以下を追加する:
vonage.applications.createApplication({
name: APPLICATION_NAME,
capabilities: {
voice: {
webhooks: {
answer_url: {
address: 'https://example.com/webhooks/answer',
http_method: 'GET',
},
event_url: {
address: 'https://example.com/webhooks/event',
http_method: 'POST',
},
},
},
messages: {
webhooks: {
inbound_url: {
address: 'https://example.com/webhooks/inbound',
http_method: 'POST',
},
status_url: {
address: 'https://example.com/webhooks/status',
http_method: 'POST',
},
},
},
rtc: {
webhooks: {
event_url: {
address: 'https://example.com/webhooks/rtcevent',
http_method: 'POST',
},
},
},
},
})
.then((app) => console.log(app))
.catch((error) => console.error(error));コードを実行する
このファイルをあなたのマシンに保存し、実行する:
前提条件
build.gradle に以下を追加する:
implementation 'com.vonage:server-sdk-kotlin:2.1.1'CreateApplication という名前のファイルを作成し、main メソッドに以下のコードを追加する:
val client = Vonage {
apiKey(VONAGE_API_KEY)
apiSecret(VONAGE_API_SECRET)
}コードを書く
CreateApplication ファイルのmain メソッドに以下を追加する:
val application = client.application.create {
name(APPLICATION_NAME)
messages {
inbound {
address("https://example.com/webhooks/inbound")
method(HttpMethod.POST)
}
status {
address("https://example.com/webhooks/status")
method(HttpMethod.POST)
}
}
voice {
answer {
address("https://example.com/webhooks/answer")
method(HttpMethod.GET)
}
fallbackAnswer {
address("https://fallback.example.com/webhooks/answer")
method(HttpMethod.GET)
}
event {
address("https://example.com/webhooks/event")
method(HttpMethod.POST)
}
}
rtc {
event {
address("https://example.com/webhooks/event")
method(HttpMethod.POST)
}
}
verify {
status {
address("https://example.com/webhooks/verify")
method(HttpMethod.POST)
}
}
vbc()
}コードを実行する
Gradle用のアプリケーション プラグインを使うことで、アプリケーションの実行を簡単にすることができます。build.gradle を以下のように更新する:
apply plugin: 'application'
mainClassName = project.hasProperty('main') ? project.getProperty('main') : ''以下のgradle コマンドを実行し、com.vonage.quickstart.kt.application をCreateApplication を含むパッケージに置き換えてアプリケーションを実行する:
前提条件
build.gradle に以下を追加する:
implementation 'com.vonage:server-sdk:9.3.1'CreateApplication という名前のファイルを作成し、main メソッドに以下のコードを追加する:
VonageClient client = VonageClient.builder()
.apiKey(VONAGE_API_KEY)
.apiSecret(VONAGE_API_SECRET)
.build();コードを書く
CreateApplication ファイルのmain メソッドに以下を追加する:
Application application = client.getApplicationClient().createApplication(
Application.builder()
.name(APPLICATION_NAME)
.addCapability(Messages.builder()
.inbound(Webhook.builder()
.address("https://example.com/webhooks/inbound")
.method(HttpMethod.POST)
.build()
)
.status(Webhook.builder()
.address("https://example.com/webhooks/status")
.method(HttpMethod.POST)
.build()
)
.build()
)
.build()
);
System.out.println("Application Created:");
System.out.println(application.toJson());コードを実行する
Gradle用のアプリケーション プラグインを使うことで、アプリケーションの実行を簡単にすることができます。build.gradle を以下のように更新する:
apply plugin: 'application'
mainClassName = project.hasProperty('main') ? project.getProperty('main') : ''以下のgradle コマンドを実行し、com.vonage.quickstart.application をCreateApplication を含むパッケージに置き換えてアプリケーションを実行する:
前提条件
Install-Package VonageCreateApplication.cs という名前のファイルを作成し、以下のコードを追加する:
using Vonage;
using Vonage.Applications;
using Vonage.Applications.Capabilities;
using Vonage.Request;CreateApplication.cs に以下を追加する:
var credentials = Credentials.FromApiKeyAndSecret(VONAGE_API_KEY, VONAGE_API_SECRET);
var client = new VonageClient(credentials);コードを書く
CreateApplication.cs に以下を追加する:
var request = new CreateApplicationRequest
{
Name = "Code Snippets V2 Application",
Capabilities = new ApplicationCapabilities
{
Messages = Vonage.Applications.Capabilities.Messages.Build()
.WithInboundUrl("https://example.com/webhooks/inbound")
.WithStatusUrl("https://example.com/webhooks/status"),
Voice = Vonage.Applications.Capabilities.Voice.Build()
.WithAnswerUrl("https://example.com/webhooks/answer", WebhookHttpMethod.Get)
.WithEventUrl("https://example.com/webhooks/event", WebhookHttpMethod.Post)
.WithFallbackAnswerUrl("https://fallback.example.com/webhooks/answer", WebhookHttpMethod.Get),
Rtc = Rtc.Build().WithEventUrl("https://example.com/webhooks/event", WebhookHttpMethod.Post)
}
};
var response = await client.ApplicationClient.CreateApplicationAsync(request);前提条件
composer require vonage/clientcreate-application.php という名前のファイルを作成し、以下のコードを追加する:
$basic = new \Vonage\Client\Credentials\Basic(VONAGE_API_KEY, VONAGE_API_SECRET);
$client = new \Vonage\Client(new \Vonage\Client\Credentials\Container($basic));コードを書く
create-application.php に以下を追加する:
try {
$application = new Nexmo\Application\Application();
$application->fromArray([
'name' => 'Should Work2',
'capabilities' => [
'voice' => [
'webhooks' => [
'answer_url' => [
'address' => "https://example.com/webhooks/answer",
'http_method' => "GET"
],
'event_url' => [
'address' => "https://example.com/webhooks/event",
'http_method' => "POST"
]
]
],
'messages' => [
'webhooks' => [
'inbound_url' => [
'address' => "https://example.com/webhooks/inbound",
'http_method' => "POST"
],
'status_url' => [
'address' => "https://example.com/webhooks/status",
'http_method' => "POST"
]
]
],
'rtc' => [
'webhooks' => [
'event_url' => [
'address' => "https://example.com/webhooks/rtcevent",
'http_method' => "POST"
]
]
]
]
]);
$application = $client->applications()->create($application);
echo $application->getId() . PHP_EOL;
echo $application->getName() . PHP_EOL;
} catch (\InvalidArgumentException $e) {
echo $e->getMessage() . PHP_EOL;
}コードを実行する
このファイルをあなたのマシンに保存し、実行する:
前提条件
pip install vonage python-dotenvコードを書く
create-application.py に以下を追加する:
from vonage import Auth, Vonage
from vonage_application import (ApplicationConfig, ApplicationData,
ApplicationUrl, Capabilities, Messages,
MessagesWebhooks, Region, Verify,
VerifyWebhooks, Voice, VoiceUrl, VoiceWebhooks)
client = Vonage(Auth(api_key=VONAGE_API_KEY, api_secret=VONAGE_API_SECRET))
# Voice application options
voice = Voice(
webhooks=VoiceWebhooks(
answer_url=VoiceUrl(
address='https://example.com/answer',
http_method='POST',
connect_timeout=500,
socket_timeout=3000,
),
fallback_answer_url=VoiceUrl(
address='https://example.com/fallback',
http_method='POST',
connect_timeout=500,
socket_timeout=3000,
),
event_url=VoiceUrl(
address='https://example.com/event',
http_method='POST',
connect_timeout=500,
socket_timeout=3000,
),
),
signed_callbacks=True,
conversations_ttl=8000,
leg_persistence_time=14,
region=Region.NA_EAST,
)
# Messages application options
messages = Messages(
version='v1',
webhooks=MessagesWebhooks(
inbound_url=ApplicationUrl(
address='https://example.com/inbound', http_method='POST'
),
status_url=ApplicationUrl(
address='https://example.com/status', http_method='POST'
),
),
authenticate_inbound_media=True,
)
# Verify application options
verify = Verify(
webhooks=VerifyWebhooks(
status_url=ApplicationUrl(address='https://example.com/status', http_method='GET')
),
)
# Set the application capabilities
capabilities = Capabilities(voice=voice, messages=messages, verify=verify)
# Set the application configuration that will be applied
params = ApplicationConfig(
name='My Custom Application',
capabilities=capabilities,
)
# Call the API
response: ApplicationData = client.application.create_application(params)
print(response)コードを実行する
このファイルをあなたのマシンに保存し、実行する:
前提条件
gem install vonagecreate-application.rb という名前のファイルを作成し、以下のコードを追加する:
client = Vonage::Client.new(
api_key: VONAGE_API_KEY,
api_secret: VONAGE_API_SECRET
)コードを書く
create-application.rb に以下を追加する:
response = client.applications.create(
name: 'Code Example App',
capabilities: {
'messages': {
'webhooks': {
'inbound_url': {
'address': 'https://example.com/webhooks/inbound',
'http_method': 'POST'
},
'status_url': {
'address': 'https://example.com/webhooks/status',
'http_method': 'POST'
}
}
}
}
)
コードを実行する
このファイルをあなたのマシンに保存し、実行する: