Callback asterisk avec freephonie
Citation:
Envoyé par
bibi
bref je me demande si tu a bien changer lordre des priorite lorsque ta suprimer lappli background. de plus tu utilise la version 1.6 de asterisk donc tu doit changer tout tes pipe par des commas en debutan par le pipe de lappli disa, si non cela ne fonctionera pas.
Bonjour,
Ça marche!!!! Merci pour ces conseils, il s'agissait bien de renuméroter l'ordre des priorités après avoir effacé certaines lignes. De plus, j'ai remplacé les pipes par des commas et ça a marché.
Un grand MERCI à tout les gens qui m'ont aidé à faire mon callback!! Je mets ci dessous tout mon code pour les gens qui sont à la recherche d'un code qui marche.
Dans "sudo gedit /etc/asterisk/sip.conf" :
[general]
port=5060
bindaddr=0.0.0.0
tos=0x18
nat=yes
externip= IP_public
disallow=all
allow=ulaw
allow = alaw
defaultexpiry=1800
register => 09*******:mot_de_passe@freephonie.net
[freephonie]
type = peer
insecure = port,invite
host = freephonie.net
username = 09*******
context = incoming_calls
fromuser = 09********
secret = mot_de_passe
nat = yes
fromdomain = freephonie.net
disallow = all
allow = alaw,ulaw
[1001]
type=friend
host=dynamic
context=phones
secret=*****
[1002]
type=friend
host=dynamic
context=phones
secret=*****
Dans "sudo gedit /etc/asterisk/extensions.conf" :
[general]
static=yes
writeprotect=no
autofallthrough=yes
clearglobalvars=no
priorityjumping=no
[globals]
CONSOLE=Console/dsp
IAXINFO=guest
TRUNK=Zap/g2
TRUNKMSD=1
[default]
exten => s,1,Verbose(1,Unrouted call handler) ;
exten => s,n,Answer()
exten => s,n,Wait(1)
;exten => s,n,Playback(tt-weasels)
exten => s,n,Hangup()
[incoming_calls]
exten => s,1,NoOp(Incoming call form callback)
exten => s,2,GotoIf($["${CALLERID(num)}" = "06*****"]?init-callback,100,1) ; on choisie le (ou les) numéros que l'on autorise pour le callback (06*****)
[internal]
exten => 1000,1,Verbose(1|Extension 1000)
exten => 1000,n,Dial(SIP/1000,30)
exten => 1000,n,Hangup()
exten => 500,1,Verbose(1|Echo test application)
exten => 500,n,Echo()
exten => 500,n,Hangup()
[phones]
include => internal
include => outgoing_calls
[init-callback]
exten => 100,1,System(echo je vais apeller ${CALLERID(num)})
exten => 100,2,Congestion
exten => 100,3,Hangup
exten => h,1,System(echo je rapelle ${CALLERID(num)})
exten => h,2,System(echo Channel: SIP/${CALLERID(num)}@freephonie > /tmp/${CALLERID(num)})
exten => h,3,System(echo Context: callback-ctx >> /tmp/${CALLERID(num)})
exten => h,4,System(echo Extension: s >> /tmp/${CALLERID(num)})
exten => h,5,System(echo Priority: 1 >> /tmp/${CALLERID(num)})
exten => h,6,System(echo MaxRetries: 5 >> /tmp/${CALLERID(num)})
exten => h,7,System(echo RetryTime: ${CALLERID(num)} >> /tmp/${CALLERID(num)})
exten => h,8,System(echo WaitTime: 45 >> /tmp/${CALLERID(num)})
exten => h,9,System(echo sleep 5 > /tmp/${CALLERID(num)}.2)
exten => h,10,System(echo cp /tmp/${CALLERID(num)} /var/spool/asterisk/outgoing/ >> /tmp/${CALLERID(num)}.2)
exten => h,11,System(chmod 775 /tmp/${CALLERID(num)}.2)
exten => h,12,System(/tmp/${CALLERID(num)}.2)
exten => h,13,Hangup()
[outgoing_calls] ; Cette partie gere les appels sortants
exten => _X.,1,Dial(SIP/${EXTEN}@freephonie) ; Sur cette ligne allons appeler en passant par la section [freephonie] du fichier sip.conf
[callback-ctx]
;exten => s,1,Background(silence/2)
;exten => s,1,SIPDtmfMode(inband))
;exten => s,1,Authenticate(1234)
exten => s,1,DISA(no-password,callback-out) ;|
[callback-out]
exten => _X.,1,Dial(SIP/freephonie/${EXTEN},240,T)
Callback asterisk avec freephonie
Citation:
Envoyé par
bibi
Merci également pour ton code il me servira assurément.
J e voudrais te demander une faveur si cela ne te géne pas, je vois que ta enlever toute la partie authentification a partir du code d'identification 1234 dans le contexte [callback-ctx] en y laissant seulement l'appli DISA(). j'aimerai que tu essaye un peu ceci si cela marche, comme tu n'a pas le fichier son "silence" pour l'appli Background().
[callback-ctx]
exten => s,1,waitexten()
exten => s,2,SIPDtmfMode(inband)
exten => s,3,Authenticate(1234)
exten => s,4,DISA(no-password,callback-out)
En fait je voudrais voir si l'appli SIPDtmfMode(inban) fonctionera.
Je voudrais aussi savoir si lorsque tu décroche l'appel effectuer par asterisk ton crédit de communication est débiter immédiatement ou alors celui ci est débite seulement quand ton correspondant décroche ton appel.
Merci
Salut,
j'ai testé ta proposition et ça marche bien sauf pour le "Authenticate(1234)" qui ne passe pas asterisk me dit qu'il n'existe pas un tel fichier.... donc qd je retire le "Authenticate(1234)" ça fonctionne bien. Il doit y avoir un moyen de régler le problème du "Authenticate(1234)" je crois.
Sinon pour la facturation, tu ne paies rien en ce qui concerne ton portable et au niveau de free la facturation commence dès que asterisk te rappelle (au moment ou tu décroche).
Callback asterisk avec freephonie
Citation:
Envoyé par
bibi
ok merci, j'ai oublier que tavais pas de fichier sonore. comme tu la dit, enléve l'appli authenticate() et reécrit l'appli disa() comme ceci:
exten => s,3,DISA(1234,callback-out)
dont qd asterisk te rappelera tu entrera le code de securité 1234 et tu terminera par diése #, avant de composer le numero de ton corespondant.
teste cela un peu sil te plai.
Salut,
Je vais tester ça tout à l'heure, en attendant j'ai mis un autre message sur le forum hier soir car je souhaite faire fonctionner un spa3102 branché directement sur ma freebox. Le spa3102 étant contrôlé par mon serveur asterisk. Peux tu regarder le message que j'ai posté sur le forum à ce sujet et voir si tu n'a pas une solution à mon problème. Merci
Callback asterisk avec freephonie
Citation:
Envoyé par
bibi
ok merci, j'ai oublier que tavais pas de fichier sonore. comme tu la dit, enléve l'appli authenticate() et reécrit l'appli disa() comme ceci:
exten => s,3,DISA(1234,callback-out)
dont qd asterisk te rappelera tu entrera le code de securité 1234 et tu terminera par diése #, avant de composer le numero de ton corespondant.
teste cela un peu sil te plai.
Bonjour,
J'ai testé et ça marche bien.
Callback asterisk avec freephonie
Bonjour à tous,
Je reviens vers vous car je rencontre un problème avec mon callback. En effet, je pensais qu'il fonctionnait correctement jusqu'au moment ou je me suis rendu compte qu'en fait c'était mon portable et pas mon fixe qui payait la communication!
Mon problème est le suivant: asterisk me rappelle bien pour le callback et lorsque je décroche j'ai bien un dial tone qui s'enclanche par la foctioon DISA " exten => s,1,DISA(no-password,callback-out) ". Jusque là tout va bien mais lorsque je compose un numéro, le dial tone ne disparait pas ça fait comme si je n'avais rien composé et au bout d'un moment j'entends une tonalité qui est du type "occupé" un peu comme qd on décroche son fixe et qu'on ne compose rien pendant un moment la tonalité "change".
La ou je me suis fait avoir c'est que je pensais qu'il fallait appuyer sur la touche "appelle" de mon portable pour que le DISA appelle la ou je veux mais c'est mon protable et pas le DISA qui appelle ds ce cas là!
Je n'arrive pas à régler ce problème. Quelqu'un a t il déjà rencontré ce genre de problème?? Qui a une solution à ça??
J'ai déjà mis l'ensemble de mon code dans mes réponses précédentes. Merci
Callback asterisk avec freephonie
Bonjour,
C'est bon j'ai résolu le problème, c'était juste une erreur de syntaxe sur le "SIPDtmfMode".
Par contre j'ai un nouveau soucis, asterisk me rappelle et je peux passer des appelles en en "interne" ie je peux appeller les softphone qui sont connectés à asterisk depuis mon portable. Par contre je ne peux pas passer d'appelle sortant, asterisk me dit que freephonie est déjà occupé....
Voici ce que je vois:
Code:
== Spawn extension (init-callback, h, 13) exited non-zero on 'SIP/freephonie-00000000'
-- Attempting call on SIP/0661837311@freephonie for s@callback-ctx:1 (Retry 1)
== Using SIP RTP CoS mark 5
-- Executing [s@callback-ctx:1] SIPDtmfMode("SIP/freephonie-00000001", "inband") in new stack
-- Executing [s@callback-ctx:2] DISA("SIP/freephonie-00000001", "no-password,phones") in new stack
-- Message check requested for mailbox /folder INBOX but voicemail not loaded.
-- Executing [0648143686@phones:1] Dial("SIP/freephonie-00000001", "SIP/0648143686@freephonie") in new stack
== Using SIP RTP CoS mark 5
-- Called 0648143686@freephonie
[May 13 16:28:05] WARNING[2498]: chan_sip.c:18030 handle_response_invite: Received response: "Forbidden" from '"asterisk" <sip:0951106231@freephonie.net>;tag=as3ba4e998'
-- SIP/freephonie-00000002 is circuit-busy
== Everyone is busy/congested at this time (1:0/1/0)
-- Auto fallthrough, channel 'SIP/freephonie-00000001' status is 'CONGESTION'
[May 13 16:28:10] NOTICE[2536]: pbx_spool.c:349 attempt_thread: Call completed to SIP/0661837311@freephonie
Est-il donc impossible de faire le callback avec appelle sortant sur freephonie?? Faut-il nécessairement avoir une deuxième ligne (un deuxième serveur sip ou autre)??