Passer au contenu principal
You are viewing the French site, but your language preference is set to English. Switch to English site →

API Voice

Découvrez l'API Programmable Voice de Twilio et créez des expériences d'appel personnalisées avec des fonctionnalités de reconnaissance vocale, d'enregistrement d'appel, de conférences téléphoniques et bien plus encore.

Inscrivez-vous et commencez à construire

Essayez de recevoir un appel de l'API Voice

  • Que se passe‑t‑il ?
  • Description technique

Lorsque vous lancez l'appel téléphonique, ce code envoie une requête à l'API Twilio Voice contenant à la fois un numéro de téléphone à appeler et un emplacement de serveur qui fourniront des instructions TwiML concernant le routage de l'appel.

Cette logique d'appel repose sur un certain nombre de verbes TwiML, notamment <Talk> pour parler à l'appelant, <Gather> pour enregistrer les touches du téléphone pressées par l'utilisateur, et <Play> pour lire du son à l'utilisateur.

Démonstration disponible aux États‑Unis et au Canada.

  • PHP
  • Node
  • Python
  • Ruby
  • Java
  • .NET (C#)
<?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);
// 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);
  }
}
// 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());
  }
}
// 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

Des API Voice puissantes

  • Contrôle des appels programmatiques

    Votre application donne à Twilio des instructions en temps réel sur la manière dont un appel doit se dérouler. Construisez quasiment tous les workflows imaginables.

    Consulter les documents sur l'API Voice
    <Response>
      <Play>/ahoy.mp3</Play>
      <Dial action="/forward">
        +15551234456
      </Dial>
    </Response>
  • Lisez du texte avec <Play> et enregistrez les pressions de touches avec <Gather>

    Les bases de la plupart des flux d'appels commencent par la possibilité de prononcer des chaînes de texte et de recueillir des données sur le clavier DTMF.

    Voir les documents
    <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>
  • Primitives <Queue> et <Conference> intégrées

    TwiML fournit des primitives intelligentes de conférence et de file d'attente pour vous faciliter la création d'expériences d'appel fluides.

    Voir les documents
    <Response>
      <Dial>
        <Client>jenny</Client>
      </Dial>
    </Response>
  • Avec <Dial>, appelez un <Client> basé sur WebRTC

    Connectez un appel à une application Web ou mobile à l'aide du SDK Twilio Client. Votre TwiML spécifie le nom d'utilisateur du client auquel connecter l'appel.

    Voir les documents
    <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>
  • Notifications de progression d'appel

    Recevez des webhooks signalant les événements clés de progression de l'appel, tels que Initié, Sonnerie, Réponse et Terminé.

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

L'avantage Twilio

Communiquez de manière fiable

Bénéficiez d'un temps de disponibilité SLA de 99,95% grâce à un basculement automatisé et à des fenêtres sans maintenance.

Fonctionnez à grande échelle

Étendez la même application sur de nouveaux marchés grâce à des fonctionnalités configurables pour la localisation et la conformité.

De nombreux canaux

Utilisez la même plateforme que celle que vous connaissez pour la synthèse vocale, les SMS, la vidéo, le chat, l'authentification à double facteur, et bien plus encore.

Pas de mauvaises surprises

Accélérez la mise sur le marché grâce aux tarifs de paiement à l'utilisation, à l'assistance gratuite et à la liberté d'évolution sans contrat.