tu peux utiliser l'option NOANSWER de DIALSTATUS pour ce cas.
tu peux utiliser l'option NOANSWER de DIALSTATUS pour ce cas.
tu as aussi la fonction AGI, pour lancer un script depuis le dialplan.
qui se lancera, dans cet exemple, lorsque tu raccrocheras après avoir obtenu le message msgack.Code:[msgack] exten = s,1,Playback(outboundmsgs/byefr) exten = s,n,NoOp(Ecriture dans le fichier retour.txt) exten = s,n,Hangup() exten = h,1,system(echo -e "resultat = 1 ok" >> /tmp/ConvertFile/retour.txt) exten = h,n,AGI(MonAgi.agi)
Cédric
---------------------------------------------------------------
Rejoignez l'Association Asterisk France : http://www.asterisk-france.org
Envie de mettre des étoiles dans les yeux de vos clients : EasyPyro.ch
On a pas inventé l'électricité en cherchant à améliorer la bougie...
---------------------------------------------------------------
je vais plutot utiliser le AGI c pas mal comme ca je pourrai composer mon message acquitement en ajoutant des details (reference date ..) et FTP apres
merci a vous![]()
peux-je abuser un peu et demander un petit coup de main pour comprendre, j'ai trouver en cherchant ca:
[macro-localcallout]
exten => s,1,Dial(${ZAP/1/${ARG1},,T)
exten => s,n,NoOp( Dial Status: ${DIALSTATUS})
exten => s,n,Goto(s-${DIALSTATUS},1)
exten => s-NOANSWER,1,Hangup
exten => s-CONGESTION,1,Congestion
exten => s-CANCEL,1,Hangup
exten => s-BUSY,1,Busy
exten => s-CHANUNAVAIL,1,SetCallerId(${CALLERIDNUM})
exten => s-CHANUNAVAIL,2,Dial(SIP/sippeer/${LOCALAREACODE}${ARG1},,T)
D'aprés ce que j'ai compris, selon le statut de l'appel il fait quelque chose mais les deux derniere j'ai pas compris a quoi il serve (CHANUNAVAIL c pour les munero invalide)
J'ai fait un petit test pour voir si ca marche
exten => s,1,Set(TIMEOUT(digit)=5) ; Set Digit Timeout to 5 seconds
exten => s,n,Set(TIMEOUT(response)=10) ; Set Response Timeout to 10 seconds
exten => s,n,Goto(s-${DIALSTATUS},1)
exten => s-NOANSWER,1,Hangup
exten => s-NOANSWER,2,system(echo -e "resultat = injoignable" >> /tmp/ConvertFile/retour.txt)
exten => s-NOANSWER,3,AGI(/tmp/ConvertFile/test_2.agi)
exten => s,n,Answer
exten => s,n,Wait(1)
....
mais ca marche pas
merci
Dernière modification par stepatchin ; 25/11/2010 à 15h14.
On est bien avancé avec ça ...mais ca marche pas
Regarde ce qui se passe dans ta CLI, il faut déboguer ligne par ligne, voir où ça échoue, puis rajouter des tests afin de savoir pourquoi.
Bon j'ai cherche toute la nuit hier et j'ai pas avancé pour autant
sinon ce matin j'ai fais un test : lancement d'un appel auto mais j'ai pas repondu normalement la NOANSWER devrait s'appliquer mais non, voila le CLIdebeug :
exten => s,1,Set(TIMEOUT(digit)=5) ; Set Digit Timeout to 5 seconds
exten => s,n,Set(TIMEOUT(response)=10) ; Set Response Timeout to 10 seconds
exten => s,n,Goto(s-${DIALSTATUS},1)
exten => s-NOANSWER,1,Hangup
exten => s-NOANSWER,2,system(echo -e "resultat = injoignable" >> /tmp/ConvertFile/retour.txt)
exten => s-NOANSWER,3,AGI(/tmp/ConvertFile/test_2.agi)
et apres plus rien :s bizarre
voila la dialplan complet (j'espere qu'il ya pas de faute)
exten => s,1,Set(TIMEOUT(digit)=5) ; Set Digit Timeout to 5 seconds
exten => s,n,Set(TIMEOUT(response)=10) ; Set Response Timeout to 10 seconds
exten => s,n,Goto(s-${DIALSTATUS},1)
exten => s-NOANSWER,1,Hangup
exten => s-NOANSWER,2,system(echo -e "resultat = injoignable" >> /tmp/ConvertFile/retour.txt)
exten => s-NOANSWER,3,AGI(/tmp/ConvertFile/test_2.agi)
exten => s,n,Answer
exten => s,n,Wait(1)
exten => s,n(boucle),Background(outboundmsgs/Msgvocal,m)
exten => s,n,Goto(boucle)
exten => 1,1,Goto(boucle) ; replay message
exten => 2,1,Goto(msgack,s,1) ; acknowledge message
exten => 3,1,Goto(msgnoack,s,1) ; acknowledge message
exten => i,1,Playback(outboundmsgs/erreur)
exten => i,n,Goto(s,5)
exten => t,1,Playback(outboundmsgs/byefr)
exten => t,2,Hangup