Voice API

TwilioのProgrammable Voice APIの詳細をご覧ください。音声認識、通話録音、電話会議を利用し、ビジネスに最適な通話サービスを構築することができます

Voice APIから通話を発信する

通話を発信すると、このコードによりTwilio Voice APIにリクエストが送信され、発信先の電話番号とともに、サーバーの位置が提供されます。TwiMLにより通話のルーティング方法を指示します。

このデモは、米国とカナダで利用可能です。

<?php
// Update the path below to your autoload.php,
// see https://getcomposer.org/doc/01-basic-usage.md
require_once '/path/to/vendor/autoload.php';
use Twilio\Rest\Client;
// Your Account Sid and Auth Token from twilio.com/console
$sid    = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
$token  = "your_auth_token";
$twilio = new Client($sid, $token);
$call = $twilio->calls
               ->create("+15558675310", // to
                  "+15017122661",       // from
                  array("url" => "http://demo.twilio.com/docs/voice.xml")
               );
print($call->sid);
// Download the helper library from https://www.twilio.com/docs/node/install
// Your Account Sid and Auth Token from twilio.com/console
const accountSid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
const authToken = "your_auth_token";
const client = require("twilio")(accountSid, authToken);
client.calls
  .create({
    url: "http://demo.twilio.com/docs/voice.xml",
    to: "+15558675310",
    from: "+15017122661",
  })
  .then((call) => console.log(call.sid))
  .done();
# Download the helper library from https://www.twilio.com/docs/python/install
from twilio.rest import Client
# Your Account Sid and Auth Token from twilio.com/console
account_sid = 'ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
auth_token = 'your_auth_token'
client = Client(account_sid, auth_token)
call = client.calls.create(
    url='http://demo.twilio.com/docs/voice.xml',
    to='+15558675310',
    from_='+15017122661'
)
print(call.sid)
# Download the helper library from https://www.twilio.com/docs/ruby/install
require 'rubygems'
require 'twilio-ruby'
# Your Account Sid and Auth Token from twilio.com/console
account_sid = 'ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
auth_token = 'your_auth_token'
@client = Twilio::REST::Client.new(account_sid, auth_token)
call = @client.calls.create(
          url: 'http://demo.twilio.com/docs/voice.xml',
          to: '+15558675310',
          from: '+15017122661'
       )
puts call.sid
// Install the Java helper library from twilio.com/docs/java/install
import com.twilio.Twilio;
import com.twilio.rest.api.v2010.account.Call;
import com.twilio.type.PhoneNumber;
import java.net.URI;
public class Example {
  // Find your Account Sid and Token at twilio.com/console
  public static final String ACCOUNT_SID = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
  public static final String AUTH_TOKEN = "your_auth_token";
  public static void main(String[] args) {
    Twilio.init(ACCOUNT_SID, AUTH_TOKEN);
    Call call = Call.creator(
        new com.twilio.type.PhoneNumber("+15558675310"),
        new com.twilio.type.PhoneNumber("+15017122661"),
        URI.create("http://demo.twilio.com/docs/voice.xml"))
      .create();
    System.out.println(call.getSid());
  }
}
// Install the C# / .NET helper library from twilio.com/docs/csharp/install
using System;
using Twilio;
using Twilio.Rest.Api.V2010.Account;
class Program 
{
  static void Main(string[] args)
  {
    // Find your Account Sid and Token at twilio.com/console
    const string accountSid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
    const string authToken = "your_auth_token";
    TwilioClient.Init(accountSid, authToken);
    var call = CallResource.Create(
      url: new Uri("http://demo.twilio.com/docs/voice.xml"),
      to: new Twilio.Types.PhoneNumber("+15558675310"),
      from: new Twilio.Types.PhoneNumber("+15017122661")
    );
    Console.WriteLine(call.Sid);
  }
}

パワフルなVoice APIプリミティブ

Programmatic call control

アプリからTwilioに対して、通話の進め方をリアルタイムで指示します。想定されるほぼすべてのワークフローを構築できます。

<Response>
  <Play>/ahoy.mp3</Play>
  <Dial action="/forward">
    +15551234456
  </Dial>
</Response>

<Say>でテキストを読み上げて、<Gather>でキーパッドの入力を取得する

ほとんどの通話フローは、テキストの読み上げ、DTMFキーパッドの入力内容の取得から始まります。

<Response>
  <Gather action="/process-keypad-input">
    <Say language="en-gb">
      Ahoy! Choose an option.
      For Sales press 1.
      For Support press 2.
    </Say>
  </Gather>
</Response>

<Queue>と<Conference>、キューイングと会議機能を搭載

TwiMLは、インテリジェントな電話会議やキューイングなどの基本機能を装備。面倒な設定なしに、シームレスな通話サービスを構築することができます。

<Response>
  <Dial>
    <Client>jenny</Client>
  </Dial>
</Response>

WebRTCを採用した<Client>に<Dial>        

Twilio Client SDKを使用し、通話をWebアプリやモバイルアプリに接続します。TwiMLを使用して、通話を接続するクライアントユーザーを指定します。

<Response>
  <Say language="en-gb">
    Ahoy! Please hold while we
    connect you to an agent.
  </Say>
  <Queue url="/support-hold">
    support-wait-queue
  </Queue>
</Response>

通話の進捗通知  

開始、呼び出し、応答、完了など、主要イベントで通話に進捗があると、通話の進捗イベントに関するWebhook通知を受信することができます。

<Response>
  <Dial>
    <Number
      statusCallbackEvent="initiated ringing answered completed"
      statusCallback="https://myapp.com/calls/events"
      statusCallbackMethod="POST">
        +14158675309
    </Number>
  </Dial>
</Response>

Twilioのメリット

Chat bubble with globe

信頼性の高い通信

自動フェイルオーバーを備え、メンテナンス期間がないことによる99.95%のアップタイムSLAをご体験ください。

Planet Earth

大規模運用

ローカリゼーションとコンプライアンスを想定した構成可能な機能を備えており、作成済みのアプリを新規市場に拡大して展開できます。

Network

多数のチャネル

音声、SMS、動画、チャット、2要素認証などで使い慣れた同じプラットフォームを活用できます。

Checkmark

No shenanigans

従量制の料金プランにより短期間で市場に参入できます。しかもサポートは無料。契約なしで自由に規模を調整できます。