PDA

Voir la version complète : détection de décrochage par un répondeur



etann38
01/02/2012, 17h09
Bonjour à tous et à toutes,
J'aimerais savoir si asterisk pouvait détecter un décrochage d'un répondeur.
Voici mon petit projet :
J'ai un numéro sip qui redirige vers un menu vocal (IVR).
Dans ce menu, il y a 3 choix dont un qui redirige vers mon numéro de portable.
J'ai calculé approximativement le nombre de second que la ligne sonne avant de tomber sur mon répondeur de portable. J'ai enlevé une ou 2 seconde sur asterisk et lorsque les 23 seconde sont passé et que je ne décroche pas, je redirige vers un voicemail asterisk.
Tout ça fonctionne.
Mais le problème, si mon téléphone est éteint, la personne qui 'appelle tombera sur mon répondeur de portable (personnel) aau lieu de basculer sur le répondeur voicemail d'asterisk (professionnel).
Je sais qu'avec la variable ${statut} on peut récupérer "answered", "chanavail", "congestion"...
Peut-on donc détecter le décrochage d'un répondeur ?
Merci à vous !

Reaper
01/02/2012, 18h32
Le module s’appelle AMD (asterisk machine detection) google un peu comment le configurer.

etann38
01/02/2012, 18h39
Le module s’appelle AMD (asterisk machine detection) google un peu comment le configurer.
Merci, je vais chercher ça et je viendrai poster si j'ai trouvé ma sollution !

etann38
01/02/2012, 20h11
Bon soir,
J'ai trouvé ce qu'il faut.
Deplus, j'utilise la version d'asterisk 1.6.x donc app.amd est déjà implémenté et chargé!
J'ai essayé plusieurs méthodes mais ça ne donne rien de bon.
Voici mon code, si quelqu'un avait une idée !


[ServeurPro]
exten => s,1,Ringing()
exten => s,2,Wait(2)
exten => s,3,Answer()
exten => s,4,Set(NbInvalide=0)
exten => s,5,Set(NbEssai=0)
exten => s,6,background(${ChmAudio}/ServeurProBienvenu)
exten => s,7,WaitExten(2)

exten => 1,1,Dial(SIP/06xxxxxxxx@ippi_outgoing2,40,m(Attente))
exten => 1,2,GotoIf($[${DIALSTATUS}=="ANSWERED"]?1,3)
exten => 1,3,AMD()
exten => 1,4,GotoIf($[${AMDSTATUS}=MACHINE]?1,5)
exten => 1,5,Voicemail(801@FloriePro,us)
exten => i,1,Set(NbInvalide=$[${NbInvalide}+1]})
exten => i,2,Gotoif($["${NbInvalide}" < "3"]?:6)
exten => i,3,Playback(${ChmAudio}/ErreurSaisie)
exten => i,4,Playback(${ChmAudio}/RetourMenu)
exten => i,5,Goto(s,6)
exten => i,6,Playback(${ChmAudio}/ErreurSaisie)
exten => i,7,Playback(${ChmAudio}/Aurevoir)
exten => i,8,Hangup()
exten => t,1,Set(NbEssai=$[${NbEssai}+1])
exten => t,2,Gotoif($["${NbEssai}" < "3"]?:5)
exten => t,3,Playback(${ChmAudio}/DemandeIncomprise)
exten => t,4,Goto(s,6)
exten => t,5,PlayBack(${ChmAudio}/Aurevoir)
exten => t,6,Hangup()

etann38
03/02/2012, 17h45
Bonjour,
Après avoir qquelques recherches... mon AMD (détecteur de répondeur) fonctionne !
Sauf qu'il ne fonctionne pas su rla bonne ligne... enfin du bon côté de la ligne.
avec le code suivant, AMD réagit du côté de l'appelant et non de l'appelé.
extensions.conf


[ServeurPro]
exten => s,1,Ringing()
exten => s,2,Wait(2)
exten => s,3,Answer()
exten => s,4,Set(NbInvalide=0)
exten => s,5,Set(NbEssai=0)
exten => s,6,background(${ChmAudio}/ServeurProBienvenu)
exten => s,7,WaitExten(2)
exten => 1,1,AMD()
exten => 1,2,GotoIf($["${AMDSTATUS}"=="MACHINE"]?1,4)
exten => 1,3,Dial(SIP/06xxxxxxxx4@ippi_outgoing2,40,m(Attente))
exten => 1,4,Voicemail(801@FloriePro,us)
exten => i,1,Set(NbInvalide=$[${NbInvalide}+1]})
exten => i,2,Gotoif($["${NbInvalide}" < "3"]?:6)
exten => i,3,Playback(${ChmAudio}/ErreurSaisie)
exten => i,4,Playback(${ChmAudio}/RetourMenu)
exten => i,5,Goto(s,6)
exten => i,6,Playback(${ChmAudio}/ErreurSaisie)
exten => i,7,Playback(${ChmAudio}/Aurevoir)
exten => i,8,Hangup()
exten => t,1,Set(NbEssai=$[${NbEssai}+1])
exten => t,2,Gotoif($["${NbEssai}" < "3"]?:5)
exten => t,3,Playback(${ChmAudio}/DemandeIncomprise)
exten => t,4,Goto(s,6)
exten => t,5,PlayBack(${ChmAudio}/Aurevoir)
exten => t,6,Hangup()


En résumé, lorsque j'appelle sur le serveur vocal et que je tape 1, il redirige bien vers le numéro de portable, mais si je fais du bruit en continue ou si je n'en fais aucun, il me déclare comme "MACHINE".
Si par contre, je parle, il me déclare comme "HUMAN"
Mon but d'utiliser AMD, llorsqu'on appelle sur le serveur vocal et qu'on est redirigé vers le téléphone portable, j'aurais aimé qu'asterisk détecte si je tombe sur la messagerie du téléphone portable ou si la personne appelée décrochait.
Si quelqu'un a une p'tite sollution à mon problème... je suis preneur!
Merci à vous !

etann38
09/02/2012, 05h19
pas de sollution pour mon answering machine detection (AMD ?
Snifffffffffff!