Affichage des résultats 1 à 10 sur 37

Discussion: Scritp AGI et PHP : interaction entre asterisk et application web php

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Junior
    Date d'inscription
    juillet 2012
    Messages
    17
    Downloads
    0
    Uploads
    0

    Scritp AGI et PHP : interaction entre asterisk et application web php

    J'ai mis en place la téléphonie avec Asterisk 1.8 (qui marche bien) et dans la suite de mon cahier de charges je suis tenu de développer une application web en php (qui est déjà en place) avec laquelle asterisk va interagir. Je m'explique : lorsqu'un client appelera le standard pour demander le solde de son compte il faudra que asterisk puisse recupérer le numero de l'appelant et ensuite le prendre en paramètre dans un script php et l'envoyer à l'application qui ensuite à son tour lui retournera (à asterisk) le resultat sous forme de "string" (chaine de caractère) et qui sera lu par le module festival(c'est un application de lecture de texte) (que j'ai dejà installé) ainsi l'appellant pourra écouter le solde de son compte communiqué par le standard.

    Quelqu'un peut-il m'aider, sur le comment du script ? et l'interaction entre ces deux entités (asterisk et l'application web) !
    "Votre Atitude determinera votre Altitude dans la vie !"

  2. #2
    Membre Association
    Date d'inscription
    septembre 2010
    Messages
    1 236
    Downloads
    0
    Uploads
    0
    Bonjour, sans savoir programmer en php j'ai pu effectuer ce type de demande avec les exemples sur la page de wiki http://www.voip-info.org/wiki/view/Asterisk+AGI+php

    Ils sont simples et lisibles.

  3. #3
    Membre Junior
    Date d'inscription
    juillet 2012
    Messages
    17
    Downloads
    0
    Uploads
    0
    Puis je voir des exemples de tes scripts, je voudrais avoir un truc qui marche et puis l'adapter à mon cas !
    "Votre Atitude determinera votre Altitude dans la vie !"

  4. #4
    Membre Junior
    Date d'inscription
    juillet 2012
    Messages
    17
    Downloads
    0
    Uploads
    0
    Quelqu'un peut m'aider ? je fais du sur place dans mes codes qui ne produisent rien à rien !
    "Votre Atitude determinera votre Altitude dans la vie !"

  5. #5
    Membre
    Date d'inscription
    février 2011
    Localisation
    Saint-Marcellin (Isère)
    Messages
    46
    Downloads
    0
    Uploads
    0
    Salut Nabil,
    Moi, j'ai aussi utilisé un script php... Mais l'agi n'était pas oppérationnel chez moi j'ai fait tout autrement.
    J'ai utilisé tout d'abord une autre voix (ibm) qui me semble plus compréhensible.
    Voici un bout de mon script extensions.conf
    [Maison]
    exten => s,1,Ringing()
    exten => s,2,Wait(1)
    exten => s,3,Answer()
    exten => s,4,PlayBack(${ChmAudio}/Bienvenu)
    exten => s,5,Goto(Maison,TousTels,1)
    exten => TousTels,1,Set(CALLFILENAME=${ChmEnreg}/Entrant/${STRFTIME(${EPOCH},,%Y-%m-%d_%H%M)}-${CALLERID(num)})
    exten => TousTels,2,Set(__ContextProvenance=Maison)
    exten => TousTels,3,Set(__ExtensionProvenance=TousTels)
    exten => TousTels,4,Monitor(wav,${CALLFILENAME},m)
    exten => TousTels,5,Set(CHANNEL(musicclass)=Attente)
    exten => TousTels,6,agi(Identifiant.php,${CALLERID(num)})
    exten => TousTels,7,Set(__Identifiant=${Identifiant})
    exten => TousTels,8,System(/usr/bin/sox /var/local/Monitor/Asterisk/Appelant.wav -r 8000 /var/local/Monitor/Asterisk/Appelant.ogg && /bin/chmod +x /var/local/Monitor/Asterisk/Appelant.ogg && /bin/rm /var/local/Monitor/Asterisk/*.wav)
    exten => TousTels,9,DIAL(SIP/SPABureau&SIP/SPASallon&SIP/SPAStudio,40,rG(RecupAppel^Choix^1))
    exten => TousTels,10,GoToIf($["${DIALSTATUS}" == "CHANUNAVAIL"] ?TousTels,13)
    exten => TousTels,11,Voicemail(713@MANU,bs)
    exten => TousTels,12,hangup
    exten => TousTels,13,Voicemail(713@MANU,us)
    exten => TousTels,14,hangup

    J'utilise ce procédé car je suis aveugle et je ne peux pas lire l'écran de mon téléphone.
    J'ai stocké un carnet d'adresse sur une base mysql.
    Lorsque quelqu'un m'appelle, je décroche et j'ai le choix de refuser l'appel ou l'accepter.
    Voici mon autre "fonction"
    [RecupAppel]
    exten => Choix,1,GoTo(RecupAppel,ring,1)
    exten => Choix,2,GoTo(RecupAppel,identity,1)
    exten => identity,1,Wait(1)
    exten => identity,2,PlayBack(${ChmAudio}/AppelQui)
    exten => identity,3,PlayBack(/var/local/Monitor/Asterisk/Appelant)
    exten => identity,4,Background(${ChmAudio}/AppelChoix)
    exten => identity,5,WaitExten(3)
    exten => 1,1,Pickup(ring@RecupAppel)
    exten => 2,1,GoTo(RecupAppel,identity,4)
    exten => t,1,GoTo(${CONTEXT},identity,1)
    exten => ring,1,Dial(LOCAL/null@RecupAppel,20,rg)
    exten => ring,2,GoToIf($["${DIALSTATUS}" == "ANSWER"] ?h,1)
    exten => null,1,Wait(100)

    Puis voici mon script php :
    #!/usr/bin/php
    <?php
    ///REQUIRE("phpagi.php");
    INCLUDE("ConnexionSql.php");
    ///$agi = new AGI();
    $Num = $_SERVER['argv'][1];
    ///$Num= preg_replace("#[^0-9]#","",$agi->request[agi_callerid]);
    IF(STRLEN($Num)>=10):
    $REQSelection = "SELECT CONCAT(prenom,' ',nom) AS Contact FROM $TBLC WHERE TelPort LIKE '%$Num%' OR TelPerso LIKE '%$Num%'";
    $RESSelection = MYSQL_QUERY($REQSelection,$Connexion);
    IF(MYSQL_NUM_ROWS($RESSelection)==1):
    $Identifiant = MYSQL_RESULT($RESSelection,0,"Contact");
    ELSE:
    $Identifiant = UTF8_DECODE(CHUNK_SPLIT($Num,2," ").' non présent dans la base de donnée');
    ENDIF;
    ELSE:
    $Identifiant = UTF8_DECODE(CHUNK_SPLIT($Num,2," ").' non présent dans la base de donnée');
    ENDIF;
    $Identifiant = '/usr/bin/say -w /var/local/Monitor/Asterisk/Appelant.wav "'.$Identifiant.'"';
    ///$agi->set_variable("Identifiant", $Identifiant);
    exec("$Identifiant");
    ?>

    Pour l'instant ça répond à ma demande actuelle mais je cherche quand-même à faire fonctionner l'agi donc si quelqu'un peut m'aider !!!
    J'espère nabil que cela pourra t'aider aussi.

  6. #6
    Membre Junior
    Date d'inscription
    juillet 2012
    Messages
    17
    Downloads
    0
    Uploads
    0
    etann38, merci pour ta compil je vais voir comment je peux me l'adapter mais jusque là je veux faire marcher mon AGI !
    "Votre Atitude determinera votre Altitude dans la vie !"

  7. #7
    Membre Junior
    Date d'inscription
    mai 2014
    Messages
    5
    Downloads
    0
    Uploads
    0

    reconnaissance vocale avec asterisk

    Salut etann38 je suis en train de faire de la reconnaissance vocale avec asterisk.je m'explique: quand l'utilisateur appelle le serveur lui demande son besoin et l'utilisateur répond après le serveur traite sa requête et lui transmet la réponse,j'ai crée une base de donnée ou on stocke les informations qu'on doit retourner aux clients.J'attend votre aide

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •