PDA

Voir la version complète : Pas de son sur mes appels sortant



Vynce
16/01/2011, 19h56
Bonjour,

Je tente de configurer asterisk mais j'ai des problèmes sur mes appels sortant.
Voici l'architecture de mon réseau :

Réseau Local (192.168.0.0) <----> serveur Asterisk (192.168.0.100) <----> Freebox (192.168.0.1) <------> WAN/freephonie

J'ai activé le SIP chez free, par contre je n'ai pas redirigé les appels vers mon
compte SIP, je souhaite juste l'utiliser pour faire des appels depuis chez moi.

J'ai deux clients SIP dans mon réseau local. Les deux peuvent s'appeler et discuter sans problème. Par contre lorsque j'appelle un numéro externe (en fait celui de ma ligne fixe), j'entends très bien mon correspondant, mais lui ne m'entend pas.

Voici mes fichiers de conf :
extensions.conf
[StLambert]
exten => 0503,1,Dial(SIP/vincent)
exten => 0303,1,Dial(SIP/macvynce)
exten => 2511,1,Dial(SIP/cecile)
exten => _0[1234589]XXXXXXXX,1,Dial(SIP/sip_freephonie/${EXTEN})

sip.conf :

[general]
context=default ; Default context for incoming calls
disallow=all ; First disallow all codecs
allow=alaw ; Allow only alaw codec
defaultexpiry=1800 ; Default length of incoming/outgoing registration
canreinvite=no
nat=yes
qualify=yes
register => 09XXXXXXXX:XXXXXXXXX@freephonie.net

[sip_freephonie]
type=peer
username=09XXXXXXXX
fromuser=09XXXXXXXX
;fromdomain=freephonie.net
md5secret=XXXXXXXXXXXXXXXXXX
host=freephonie.net
nat=yes
qualify=yes
dtmfmode=rfc2833
context=StLambert

[vincent]
type=friend
defaultuser=Vincent
md5secret=6e05f8c9705d8fdb928004c7cdd4b691
host=dynamic
dtmfmode=rfc2833
context=StLambert

[macvynce]
type=friend
defaultuser=Vincent
md5secret=03ea7d1acf78e30181908bb702395f06
host=dynamic
dtmfmode=rfc2833
context=StLambert

[cecile]
type=friend
defaultuser=Cecile
md5secret=7113839cc3e55b32a437adcdb1b58c30
host=dynamic
dtmfmode=rfc2833
context=StLambert


Bien que je ne pense pas que le problème vienne de là, j'ai aussi ouvert les ports
de ma freebox. Le port 5060 en TCP et UDP, ainsi que la plage 10000 à 20000 en UDP
que j'ai redirigé vers mon serveur asterisk.

J'ai testé tout à ce quoi j'ai pensé, je suis à court d'idées, si vous avez des solutions je suis plus que preneur !!!

Merci pour vos réponses.

Vincent

Elwood
16/01/2011, 22h38
Salut,

Regardez sur cette page, vous trouverez peut être des infos intéressantes. http://www.freephonie.org/doku/tutoriel:asterisk

Pour moi ça fonctionne bien, j'ai le son ;)

Vynce
17/01/2011, 09h54
Salut,

J'ai bien suivi le tuto que tu avais indiqué, cette fois-ci je suis parti de fichiers sip.conf et extensions.conf vides.

J'ai toujours le même problème, mon correspondant de m'entend pas :confused:

Je remets mes fichiers de conf ainsi que mes logs :

dans modules.conf j'ai enlevé certains modules qui me mettaient des WARNING :

[modules]
autoload=yes

noload => res_config_ldap.so
noload => codec_dahdi.so
noload => chan_dahdi.so
noload => chan_vpb.so
noload => chan_iax2.so
noload => res_ais.so
noload => codec_g722.so

Voilà mon sip.conf :

[general]
defaultexpiry=1800
dtmfmode=auto
qualify=yes

register => 09XXXXXXXX:YYYYYYYYYY@freephonie.net
disallow=all
allow=ulaw
allow=alaw
allow=speex

[sip_freephonie_out]
type=peer
host=freephonie.net
username=09XXXXXXXX
fromuser=09XXXXXXXX
secret=XXXXXX
nat=yes

[sip_freephonie_in]
type=peer
context=FromFree
host=freephonie.net

[vincent]
type=friend
username=Vincent
secret=XXXXX
host=dynamic
context=StLambert
nat=yes

[macvynce]
type=friend
username=Vincent_Mac
secret=XXXXX
host=dynamic
context=StLambert

Et enfin mon extensions.conf

[StLambert]
exten => 0503,1,Dial(SIP/vincent)
exten => 0303,1,Dial(SIP/macvynce)
exten => _0[1234589]XXXXXXXX,1,Dial(SIP/sip_freephonie_out/${EXTEN})

[FromFree]
exten => s,1,Dial(SIP/vincent)



Voilà ce que j'obtiens dans le /var/log/asterisk/messages :

[Jan 17 08:43:01] NOTICE[20686] cdr.c: CDR simple logging enabled.
[Jan 17 08:43:01] NOTICE[20686] loader.c: 191 modules will be loaded.
[Jan 17 08:43:01] NOTICE[20686] config.c: Registered Config Engine sqlite
[Jan 17 08:43:01] NOTICE[20686] res_odbc.c: res_odbc loaded.
[Jan 17 08:43:01] NOTICE[20686] res_smdi.c: No SMDI interfaces are available to listen on, not starting SMDI listener.
[Jan 17 08:43:01] NOTICE[20686] pbx_ael.c: Starting AEL load process.
[Jan 17 08:43:01] NOTICE[20686] pbx_ael.c: AEL load process: parsed config file name '/etc/asterisk/extensions.ael'.
[Jan 17 08:43:01] NOTICE[20686] pbx_ael.c: AEL load process: checked config file name '/etc/asterisk/extensions.ael'.
[Jan 17 08:43:01] NOTICE[20686] pbx_ael.c: AEL load process: compiled config file name '/etc/asterisk/extensions.ael'.
[Jan 17 08:43:01] NOTICE[20686] pbx_ael.c: AEL load process: merged config file name '/etc/asterisk/extensions.ael'.
[Jan 17 08:43:01] NOTICE[20686] pbx_ael.c: AEL load process: verified config file name '/etc/asterisk/extensions.ael'.
[Jan 17 08:43:01] NOTICE[20686] config.c: Registered Config Engine curl
[Jan 17 08:43:01] NOTICE[20686] chan_sip.c: The 'username' field for sip peers has been deprecated in favor of the term 'defaultuser'
[Jan 17 08:43:01] NOTICE[20686] chan_skinny.c: Configuring skinny from skinny.conf
[Jan 17 08:43:01] NOTICE[20700] chan_sip.c: Peer 'macvynce' is now Reachable. (4ms / 2000ms)
[Jan 17 08:43:01] NOTICE[20700] chan_sip.c: Peer 'sip_freephonie_in' is now Reachable. (36ms / 2000ms)
[Jan 17 08:43:01] NOTICE[20700] chan_sip.c: Peer 'sip_freephonie_out' is now Reachable. (73ms / 2000ms)
[Jan 17 08:43:02] NOTICE[20700] chan_sip.c: Peer 'vincent' is now Reachable. (1337ms / 2000ms)


Ce qui m'a l'air correct.
J'ai ouvert les ports dans ma freebox (5060 en TCP et UDP, puis 10000 à 20000 en UDP) et j'ai vérifié avec des "nc" et ça passe en TCP comme en UDP. De plus j'ai fait un "tcpdump " pour voir si des trames
arrivaient vers asterisk (serveur en 192.168.0.100) et je vois le serveur
de freephonie qui m'envoi continuellement des paquets "KeepAlive PacketCirpack"

Voici la sortie du tcpdump :

tcpdump -n port 5060

tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes
08:59:08.765578 IP 212.27.52.5.5060 > 192.168.0.100.5060: SIP, length: 32
08:59:09.262573 IP 212.27.52.5.5060 > 192.168.0.100.5060: SIP, length: 32
08:59:09.480843 IP 212.27.52.5.5060 > 192.168.0.100.5060: SIP, length: 32
08:59:09.512631 IP 212.27.52.5.5060 > 192.168.0.100.5060: SIP, length: 32
08:59:09.811460 IP 212.27.52.5.5060 > 192.168.0.100.5060: SIP, length: 32
08:59:10.322740 IP 212.27.52.5.5060 > 192.168.0.100.5060: SIP, length: 32
08:59:10.964058 IP 212.27.52.5.5060 > 192.168.0.100.5060: SIP, length: 32
08:59:11.372556 IP 212.27.52.5.5060 > 192.168.0.100.5060: SIP, length: 32
08:59:11.776120 IP 212.27.52.5.5060 > 192.168.0.100.5060: SIP, length: 32
08:59:12.200938 IP 212.27.52.5.5060 > 192.168.0.100.5060: SIP, length: 32
08:59:12.321362 IP 212.27.52.5.5060 > 192.168.0.100.5060: SIP, length: 32
^C
11 packets captured
11 packets received by filter
0 packets dropped by kernel


Bref, il me semble que tout passe, mais mon correspondant ne m'entend toujours pas. Je penche pour une mauvaise configuration d'asterisk car le reste à l'air de fonctionner comme attendu.

Merci pour vos conseils, je suis preneur, car j'aimerai vraiment le faire fonctionner cet asterisk !!!

Vincent

cedricscha
17/01/2011, 10h13
ton softphone, est bien sur le meme reseau que l'asterisk ?

Vynce
17/01/2011, 11h02
Oui oui, mes deux softphones (macvynce et vincent dans les logs) sont sur le même réseau que l'asterisk. D'ailleurs quand je passe un appel en interne de l'un vers l'autre, ça marche bien.

Aïe aïe aïe, ça me fait tourner bourrique ....

cedricscha
17/01/2011, 11h05
et qu'obtiens tu dans la cli durant un appel ?

Vynce
17/01/2011, 11h45
Par cli je suppose que c'est la console asterisk ?
Je me suis connecté sur ma console, j'ai augmenté le niveau de debug et de verbose à 25, j'ai activé le debug sur sip.

Voici le lien pour télécharger le log car c'est un peu gros pour le forum.

http://dl.dropbox.com/u/8838006/asterisk_cli.log

En tout cas merci beaucoup pour les réponses et les messages très réactifs !
Merci encore.

Vincent

hugocholet
17/01/2011, 23h07
moi aussi, je possède le même soucis, mon soft et mon téléphone ip ne sont pas sur la même connexion.

Voici une copie de CLI



Executing [s@macro-dialout-trunk:21] Goto("SIP/106-0000006e", "s-CONGESTION,1") in new stack
-- Goto (macro-dialout-trunk,s-CONGESTION,1)
-- Executing [s-CONGESTION@macro-dialout-trunk:1] Set("SIP/106-0000006e", "RC=21") in new stack
-- Executing [s-CONGESTION@macro-dialout-trunk:2] Goto("SIP/106-0000006e", "21,1") in new stack
-- Goto (macro-dialout-trunk,21,1)
-- Executing [21@macro-dialout-trunk:1] Goto("SIP/106-0000006e", "continue,1") in new stack
-- Goto (macro-dialout-trunk,continue,1)
-- Executing [continue@macro-dialout-trunk:1] GotoIf("SIP/106-0000006e", "1?noreport") in new stack
-- Goto (macro-dialout-trunk,continue,3)
-- Executing [continue@macro-dialout-trunk:3] NoOp("SIP/106-0000006e", "TRUNK Dial failed due to CONGESTION HANGUPCAUSE: 21 - failing through to other trunks") in new stack
-- Executing [continue@macro-dialout-trunk:4] Set("SIP/106-0000006e", "CALLERID(number)=106") in new stack
-- Executing [90241632081@from-internal:8] Macro("SIP/106-0000006e", "outisbusy,") in new stack
-- Executing [s@macro-outisbusy:1] Progress("SIP/106-0000006e", "") in new stack
-- Executing [s@macro-outisbusy:2] Playback("SIP/106-0000006e", "all-circuits-busy-now,noanswer") in new stack
-- <SIP/106-0000006e> Playing 'all-circuits-busy-now.gsm' (language 'en')
-- Executing [s@macro-outisbusy:3] Playback("SIP/106-0000006e", "pls-try-call-later,noanswer") in new stack
-- <SIP/106-0000006e> Playing 'pls-try-call-later.gsm' (language 'en')
-- Executing [s@macro-outisbusy:4] Macro("SIP/106-0000006e", "hangupcall") in new stack
-- Executing [s@macro-hangupcall:1] GotoIf("SIP/106-0000006e", "1?skiprg") in new stack
-- Goto (macro-hangupcall,s,4)
-- Executing [s@macro-hangupcall:4] GotoIf("SIP/106-0000006e", "1?skipblkvm") in new stack
-- Goto (macro-hangupcall,s,7)
-- Executing [s@macro-hangupcall:7] GotoIf("SIP/106-0000006e", "1?theend") in new stack
-- Goto (macro-hangupcall,s,9)
-- Executing [s@macro-hangupcall:9] Hangup("SIP/106-0000006e", "") in new stack
== Spawn extension (macro-hangupcall, s, 9) exited non-zero on 'SIP/106-0000006e' in macro 'hangupcall'
== Spawn extension (macro-outisbusy, s, 4) exited non-zero on 'SIP/106-0000006e' in macro 'outisbusy'
== Spawn extension (from-internal, 0241xxxxx, 8) exited non-zero on 'SIP/106-0000006e'
-- Executing [h@from-internal:1] Macro("SIP/106-0000006e", "hangupcall") in new stack
-- Executing [s@macro-hangupcall:1] GotoIf("SIP/106-0000006e", "1?skiprg") in new stack
-- Goto (macro-hangupcall,s,4)
-- Executing [s@macro-hangupcall:4] GotoIf("SIP/106-0000006e", "1?skipblkvm") in new stack
-- Goto (macro-hangupcall,s,7)
-- Executing [s@macro-hangupcall:7] GotoIf("SIP/106-0000006e", "1?theend") in new stack
-- Goto (macro-hangupcall,s,9)
-- Executing [s@macro-hangupcall:9] Hangup("SIP/106-0000006e", "") in new stack
== Spawn extension (macro-hangupcall, s, 9) exited non-zero on 'SIP/106-0000006e' in macro 'hangupcall'
== Spawn extension (from-internal, h, 1) exited non-zero on 'SIP/106-0000006e'

Vynce
18/01/2011, 23h18
Ahhhh je viens de trouver .....
Je testais en m'appelant sur ma propre ligne et Free n'autorisant pas d'avoir deux lignes, il devait y avoir un soucis car en fait je m'appelait depuis ma propre ligne vers ma propre ligne (je n'avais pas redirigé les appels entrant vers SIP).

En tout cas, merci pour vos conseils.

cedricscha
19/01/2011, 07h45
Ahhhh je viens de trouver .....
Je testais en m'appelant sur ma propre ligne et Free n'autorisant pas d'avoir deux lignes, il devait y avoir un soucis car en fait je m'appelait depuis ma propre ligne vers ma propre ligne (je n'avais pas redirigé les appels entrant vers SIP).

En tout cas, merci pour vos conseils.

Bon ben tant mieux ......

cedricscha
19/01/2011, 07h47
moi aussi, je possède le même soucis, mon soft et mon téléphone ip ne sont pas sur la même connexion.

Voici une copie de CLI



Executing [s@macro-dialout-trunk:21] Goto("SIP/106-0000006e", "s-CONGESTION,1") in new stack
-- Goto (macro-dialout-trunk,s-CONGESTION,1)
-- Executing [s-CONGESTION@macro-dialout-trunk:1] Set("SIP/106-0000006e", "RC=21") in new stack
-- Executing [s-CONGESTION@macro-dialout-trunk:2] Goto("SIP/106-0000006e", "21,1") in new stack
-- Goto (macro-dialout-trunk,21,1)
-- Executing [21@macro-dialout-trunk:1] Goto("SIP/106-0000006e", "continue,1") in new stack
-- Goto (macro-dialout-trunk,continue,1)
-- Executing [continue@macro-dialout-trunk:1] GotoIf("SIP/106-0000006e", "1?noreport") in new stack
-- Goto (macro-dialout-trunk,continue,3)
-- Executing [continue@macro-dialout-trunk:3] NoOp("SIP/106-0000006e", "TRUNK Dial failed due to CONGESTION HANGUPCAUSE: 21 - failing through to other trunks") in new stack
-- Executing [continue@macro-dialout-trunk:4] Set("SIP/106-0000006e", "CALLERID(number)=106") in new stack
-- Executing [90241632081@from-internal:8] Macro("SIP/106-0000006e", "outisbusy,") in new stack
-- Executing [s@macro-outisbusy:1] Progress("SIP/106-0000006e", "") in new stack
-- Executing [s@macro-outisbusy:2] Playback("SIP/106-0000006e", "all-circuits-busy-now,noanswer") in new stack
-- <SIP/106-0000006e> Playing 'all-circuits-busy-now.gsm' (language 'en')
-- Executing [s@macro-outisbusy:3] Playback("SIP/106-0000006e", "pls-try-call-later,noanswer") in new stack
-- <SIP/106-0000006e> Playing 'pls-try-call-later.gsm' (language 'en')
-- Executing [s@macro-outisbusy:4] Macro("SIP/106-0000006e", "hangupcall") in new stack
-- Executing [s@macro-hangupcall:1] GotoIf("SIP/106-0000006e", "1?skiprg") in new stack
-- Goto (macro-hangupcall,s,4)
-- Executing [s@macro-hangupcall:4] GotoIf("SIP/106-0000006e", "1?skipblkvm") in new stack
-- Goto (macro-hangupcall,s,7)
-- Executing [s@macro-hangupcall:7] GotoIf("SIP/106-0000006e", "1?theend") in new stack
-- Goto (macro-hangupcall,s,9)
-- Executing [s@macro-hangupcall:9] Hangup("SIP/106-0000006e", "") in new stack
== Spawn extension (macro-hangupcall, s, 9) exited non-zero on 'SIP/106-0000006e' in macro 'hangupcall'
== Spawn extension (macro-outisbusy, s, 4) exited non-zero on 'SIP/106-0000006e' in macro 'outisbusy'
== Spawn extension (from-internal, 0241xxxxx, 8) exited non-zero on 'SIP/106-0000006e'
-- Executing [h@from-internal:1] Macro("SIP/106-0000006e", "hangupcall") in new stack
-- Executing [s@macro-hangupcall:1] GotoIf("SIP/106-0000006e", "1?skiprg") in new stack
-- Goto (macro-hangupcall,s,4)
-- Executing [s@macro-hangupcall:4] GotoIf("SIP/106-0000006e", "1?skipblkvm") in new stack
-- Goto (macro-hangupcall,s,7)
-- Executing [s@macro-hangupcall:7] GotoIf("SIP/106-0000006e", "1?theend") in new stack
-- Goto (macro-hangupcall,s,9)
-- Executing [s@macro-hangupcall:9] Hangup("SIP/106-0000006e", "") in new stack
== Spawn extension (macro-hangupcall, s, 9) exited non-zero on 'SIP/106-0000006e' in macro 'hangupcall'
== Spawn extension (from-internal, h, 1) exited non-zero on 'SIP/106-0000006e'




Ouvre ton propre sujet, ne pollue pas celui des autres.