Crear una aplicación
En este fragmento de código verás cómo crear una Application.
Ejemplo
Tendrá que asegurarse de que los siguientes valores reemplazables se establecen en el código de ejemplo utilizando cualquier método conveniente:
| Clave | Descripción |
|---|---|
VONAGE_API_KEY | Your Vonage API key (see it on your dashboard). |
VONAGE_API_SECRET | Your Vonage API secret (also available on your dashboard). |
Escriba el código
Añada lo siguiente a 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": {Ejecute su código
Guarde este archivo en su máquina y ejecútelo:
Requisitos previos
npm install @vonage/server-sdkCrea un archivo llamado create-application.js y añade el siguiente código:
const { Vonage } = require('@vonage/server-sdk');
const vonage = new Vonage({
apiKey: VONAGE_API_KEY,
apiSecret: VONAGE_API_SECRET,
});Escriba el código
Añada lo siguiente a 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));Ejecute su código
Guarde este archivo en su máquina y ejecútelo:
Requisitos previos
Añada lo siguiente a build.gradle:
implementation 'com.vonage:server-sdk-kotlin:2.1.1'Crea un archivo llamado CreateApplication y añade el siguiente código al método main:
val client = Vonage {
apiKey(VONAGE_API_KEY)
apiSecret(VONAGE_API_SECRET)
}Escriba el código
Añada lo siguiente al método main del archivo CreateApplication:
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()
}Ejecute su código
Podemos utilizar el plugin aplicación para Gradle para simplificar la ejecución de nuestra aplicación. Actualiza tu build.gradle con lo siguiente:
apply plugin: 'application'
mainClassName = project.hasProperty('main') ? project.getProperty('main') : ''Ejecute el siguiente comando gradle para ejecutar su aplicación, sustituyendo com.vonage.quickstart.kt.application por el paquete que contiene CreateApplication:
Requisitos previos
Añada lo siguiente a build.gradle:
implementation 'com.vonage:server-sdk:9.3.1'Crea un archivo llamado CreateApplication y añade el siguiente código al método main:
VonageClient client = VonageClient.builder()
.apiKey(VONAGE_API_KEY)
.apiSecret(VONAGE_API_SECRET)
.build();Escriba el código
Añada lo siguiente al método main del archivo CreateApplication:
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());Ejecute su código
Podemos utilizar el plugin aplicación para Gradle para simplificar la ejecución de nuestra aplicación. Actualiza tu build.gradle con lo siguiente:
apply plugin: 'application'
mainClassName = project.hasProperty('main') ? project.getProperty('main') : ''Ejecute el siguiente comando gradle para ejecutar su aplicación, sustituyendo com.vonage.quickstart.application por el paquete que contiene CreateApplication:
Requisitos previos
Install-Package VonageCrea un archivo llamado CreateApplication.cs y añade el siguiente código:
using Vonage;
using Vonage.Applications;
using Vonage.Applications.Capabilities;
using Vonage.Request;Añada lo siguiente a CreateApplication.cs:
var credentials = Credentials.FromApiKeyAndSecret(VONAGE_API_KEY, VONAGE_API_SECRET);
var client = new VonageClient(credentials);Escriba el código
Añada lo siguiente a 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);Requisitos previos
composer require vonage/clientCrea un archivo llamado create-application.php y añade el siguiente código:
$basic = new \Vonage\Client\Credentials\Basic(VONAGE_API_KEY, VONAGE_API_SECRET);
$client = new \Vonage\Client(new \Vonage\Client\Credentials\Container($basic));Escriba el código
Añada lo siguiente a 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;
}Ejecute su código
Guarde este archivo en su máquina y ejecútelo:
Requisitos previos
pip install vonage python-dotenvEscriba el código
Añada lo siguiente a 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)Ejecute su código
Guarde este archivo en su máquina y ejecútelo:
Requisitos previos
gem install vonageCrea un archivo llamado create-application.rb y añade el siguiente código:
Ejecute su código
Guarde este archivo en su máquina y ejecútelo: