IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Présentation des Orange API :
Services mobiles et services vocaux pour le web

Date de publication : 07 juin 2010 , Date de mise à jour : 10 juin 2010


VIII. Mettre en relation 2 téléphones
VIII-A. Description
VIII-B. Exemple de code
IX. Organiser des conférences téléphoniques
IX-A. Description
IX-A-1. Création de la conférence
IX-A-2. Ajout de participants
IX-A-3. Appel sortant des participants
IX-B. Exemple de code
X. Créer un service vocal interactif
X-A. Description
X-B. Exemple de fichier VXML


VIII. Mettre en relation 2 téléphones


VIII-A. Description

 
L'API Click-2-Call permet de créer des appels vers les téléphones fixes et mobiles du monde entier, quel que soit l'opérateur, directement au sein d'une application. Il suffit de spécifier les deux numéros de téléphone de l'appelant et de l'appelé, et l'API se charge de mettre en relation, instantanément, les deux participants. Plusieurs options sont disponibles, comme l'affichage des numéros, la durée maximale de l'appel, ou la confirmation de l'appel par l'appelant...

idea L'API peut servir dans un formulaire web pour proposer à l'internaute de contacter un plateau téléphonique, sur votre blog pour être appelé sans divulguer votre numéro, ...


VIII-B. Exemple de code

Code en PHP
<?php
// clé d'identification
$access_key = "a1234b56789";

// adresse de l'API click-to-call
$adresse = "http://call.beta.orange-api.net/call/createCall.xml";

// le numéro de l'appelant (au format international)
$from = "33XXXXXXXXX";
// numéro de téléphone du destinataire (au format international)
$to = "33XXXXXXXXX";
// confirmation de l'appel (par l'appelant)
$call_confirmation = true;

// exécution de la requête > création de l'appel
$response = file_get_contents($adresse . "?id=" . $access_key . "&amp;from=" . $from . "&amp;to=" . $to . "&amp;$call_confirmation=" . $call_confirmation);

// Affichage de la réponse de l'API
$xml=simplexml_load_string($response);
echo($xml->status->status_code . " - " . $xml->status->status_msg);

?> 

IX. Organiser des conférences téléphoniques


IX-A. Description

L'API Click-2-Conf permet d'organiser des réunions téléphoniques pour discuter à plusieurs. Plusieurs options sont disponibles, comme la durée de la conférence, la date et l'heure de début, le mode d'accès à la conférence (en appelant un numéro ou en se faisant appeler).

Les participants peuvent rejoindre les conférences de trois façons :
  1. appel entrant avec code secret : le participant compose le numéro de téléphone de la conférence, puis saisit un code secret ("le room code") : c'est le mode d'accès appelé "room" dans l'API
  2. appel entrant avec identification : le participant compose le numéro de téléphone de la conférence, il est reconnu automatiquement et n'a pas besoin de taper de "room code" : c'est le mode appelé "caller"
  3. appel sortant : l'application déclenche un appel sortant depuis la conférence vers le participant, qui décroche, confirme en appuyant sur # et rejoint la conférence.
Les appels entrants se font sur un numéro Indigo 0825 qui sera facturé 0,15 €/min à chaque participant (actuellement, les appels entrants ne sont disponibles que pour la France). Le coût des appels sortants est supporté par l'organisateur, c'est-à-dire l'application qui créée la conférence, et vont donc consommer des crédits au même tarif que pour l'Api click-to-call.


Les actions possibles par API pour gérer une conférence téléphonique :
  • la création de la conférence,
  • l'ajout de participants,
  • l'appel sortant des participants.

IX-A-1. Création de la conférence

info La création d'une conférence est une étape obligatoire. C'est elle qui définit le mode d'accès à la conférence : " room ", " caller ", " room+caller " ou " none ". En mode " caller ", la liste des participants ne peut pas être vide. Dans les autres modes, ils peuvent être ajoutés ensuite.


IX-A-2. Ajout de participants

Une fois la conférence créée, il est possible d'ajouter des nouveaux participants, pour les autoriser à intégrer la conférence existante.

Requête :

http://conference.beta.orange-api.net/conf/addCaller.xml?id=[clé d'identification]&conf_id=[identifiant de la conférence]&caller_numbers=[numéro 1],[numéro 2]


IX-A-3. Appel sortant des participants

Lorsqu'une conférence est créée et qu'il y a des participants enregistrés, il est possible de déclencher un appel vers un participant pour qu'il rejoigne la conférence.

Requête :

http://conference.beta.orange-api.net/conf/createCall.xml?id=[clé d'identification]&from=[numéro de l'invité]&to=[identifiant de la conférence]&notification_url=[URL de notification]


IX-B. Exemple de code

voici un exemple en PHP qui créée une conférence et déclenche les appels sortants vers tous les participants définis dans le paramètre $call_numbers
Code en PHP

<?php
// clé d'identification
$access_key = "a1234b56789";
// adresse de l'API click-to-conf > CreateConf
$adresse = "http://conference.beta.orange-api.net/conf/createConference.xml";
// adresse de l'API click-to-conf > CreateCall
$adresse = "http://conference.beta.orange-api.net/conf/createCall.xml";
// les numéros à mettre en conférence (au format international)
$call_numbers = "331XXXXXXXX, 332XXXXXXXX, 333XXXXXXXX";
// le type de la conférence: (room, room+caller, none)
$access_mode = "none";
// durée de la conférence (en minutes)
$duration = 20;

// éxécution de la requête > création de la conférence
$response = file_get_contents($adresse . "?id=" . $access_key . "&amp;$access_mode=" . $access_mode . "&amp;duration=" . $duration);

// récupération de la réponse de l'API
$xml=simplexml_load_string($response);
// vérification de la création de la conférence
if ($xml->status->status_code = 200)
{
  // récupération de l'identifiant de la conférence
  $id_conf= $xml->conference->id;

  // appel des participants de la conférence
  $while ($from = each(explode(","$caller_numbers))
  {
    // exécution de la requête > création de la conférence
    $response = file_get_contents($adresse . "?id=" . $access_key . "&amp;from=" . $from . "&amp;to=" . $to);

    // récupération de la réponse de l'API
    $xml=simplexml_load_string($response);
    echo($xml->status->status_code . " - " . $xml->status->status_msg);
  } else {
    echo($xml->status->status_code . " - " . $xml->status->status_msg);
  }
}
?>

X. Créer un service vocal interactif


X-A. Description

L'API Voice Mashup permet de mettre en place assez facilement un service vocal interactif - c'est-à-dire un dialogue automatisé composé de sons enregistrés et de textes vocalisés, pouvant être guidés grâce aux touches du téléphone en DTMF. Voice Mashup ne nécessite pas de compétence particulière en téléphonie mais utilise le VoiceXML qui peut être utilisé facilement par un développeur web. La conception d'une interface vocale est cependant particulière, le cheminement de l'utilisateur doit rester très compréhensible, et le langage permet des fonctions nombreuses que l'on ne peut détailler ici. Vous trouverez sur le site api.orange.com quelques exemples prêts à l'emploi de VXML pour vous aider à démarrer, comme ci-dessous une question avec saisie de réponse DTMF. Les fonctions de base que vous pouvez utiliser dans les scripts VXML sont : vocaliser un texte, jouer un fichier son, enregistrer une saisie DTMF, enregistrer un son, et gérer les appels depuis votre service vocal : déclencher un appel sortant vers un téléphone, transférer un appel en cours, etc...

idea L'API peut servir pour automatiser des contacts clients (accueil téléphonique, service après-vente, ...), automatiser des campagnes d'appels, diffuser un message enregistré vers une liste de destinataires (le journal de bord des colonies de vacances par exemple), notifier des messages urgents, etc.


X-B. Exemple de fichier VXML

Fichier VXML

<vxml version="2.0" xmlns="http://www.w3.org/2001/vxml">
  <form id="start">
    <field name="color" >
      <prompt>
        Veuillez sélectionner votre couleur préférée
        <emphasis>1</emphasis>pour le jaune
        <emphasis>2</emphasis>pour le rouge
      </prompt>
      <!-- L'appelé choisit son option et le choix est enregistré. 
           La voix informe l'appelé. -->
      <option accept="approximate" dtmf="1" value="yellow" >one</option>
      <option accept="approximate" dtmf="2" value="red" >two</option>
    </field>
    <block>
      <prompt>Merci ! Votre choix a été enregistré.</prompt>
      <!-- Validation, envoi du formulaire et retour au début du script.-->
      <submit next="#" namelist="" method="post" />
    </block>
  </form>
</vxml>
 

Valid XHTML 1.0 TransitionalValid CSS!

Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2010 developpez Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site ni de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.