Bonjour

Voici mon problème : J'ai un compte SIP chez OVH que je veux utiliser sur plusieurs devices simultanément. Concrètement, quand on m'appelle, je veux pouvoir décrocher soit sur mon PC de bureau, soit sur mon smartphone soit sur mon Mac Book Air etc et pas seulement avoir le dernier device authentifié qui sonne.

J'ai donc installé Asterisk 1.8.10.1 sur mon serveur dédié (chez OVH également) sous Ubuntu, avec un simple apt-get pour mettre en place un groupe d'appel. Le serveur est directement connecté à Internet, il n'y a pas de routeur. Les clients fonctionnent correctement lorsque je les configure pour utiliser mon SIP OVH directement.

J'ai suivi de nombreux tutos, la doc etc et j'ai presque réussi à faire ce que je veux, mis à part que je n'entends pas mon correspondant lorsqu'il m'appelle. Je n'ai en revanche aucun souci lorsque c'est moi qui l'appelle ou lorsque j'appelle un de mes autres devices en interne.

J'ai créé 3 comptes sur Asterisk pour chacun des devices avec les numéros 6001, 6002 et 6003.

Voici mes fichiers de configuration :

sip.conf
Code:
[general]
bindport=5060
bindaddr=XXX.XXX.XXX.XXX ; Adresse IP de mon serveur dédié
srvlookup=yes
defaultexpiry=3600
registertimeout=30
registerattempts=0
allowguest=no
encryption=no
nat = yes
directmedia=yes ; "canreinvite" dans les versions plus anciennes
directrtpsetup=no

; SIP trunks
register => 033XXXXXXXXX:********@sip.ovh.fr
 
[lenwe-ovh]
encryption=no
type=peer
host=sip.ovh.fr
context=lenwe-incoming
language=fr
insecure=invite,port
fromdomain=sip.ovh.fr
fromuser=033XXXXXXXXX
username=033XXXXXXXXX
secret=********
qualify=yes
dtmfmode=auto
language=fr
video=no
disallow=all
allow=ulaw,alaw,g729,g723,adpcm
Si je mets directmedia (anciennement canreinvite) à no, je n'entends plus mon correspondant lorsque je l'appelle
Si je mets directrtpsetup à yes, je n'entends plus rien dans les 2 sens en appelant un 6XXX depuis un autre 6XXX (mais à la limite on s'en fout)

users.conf
Code:
[general]
fullname = New User
userbase = 6000
hasvoicemail = no
hassip = yes
hasiax = no
hasmanager = no

[lenwe](!)
type=friend
host=dynamic
dtmfmode=auto
fullname = Lenwe
context=lenwe-internal
secret=O1mwODnU
language=fr
video=no
mailbox=XXXXXXXX@XXX.com
disallow=all
allow=ulaw,alaw,g729,g723,adpcm
 
[6001](lenwe)
username = lenwe-office
 
[6002](lenwe)
username = lenwe-mobile
 
[6003](lenwe)
username = lenwe-laptop
extensions.conf
Code:
[general] 
static=yes 
writeprotect=no 
autofallthrough=yes 
clearglobalvars=no 
priorityjumping=no 

[lenwe-incoming]

; from external
exten => s,1,Dial(SIP/6001&SIP/6002&SIP/6003,20,t)

[lenwe-internal]

; to internal
exten => _6XXX,1,Dial(SIP/${EXTEN},20,t)

; to external
exten => _X.,1,Dial(SIP/lenwe-ovh/${EXTEN})
Voici la trace lorsque je passe un appel depuis mon ordinateur (6001) vers l'extérieur (0951XXXXXX) => Ça fonctionne. On remarque que les lignes sont bridgées.

Appel de 6001 vers ligne fixe
Code:
== Using SIP RTP CoS mark 5
	-- Executing [0951XXXXXX@lenwe-internal:1] Dial("SIP/6001-00000000", "SIP/lenwe-ovh/0951XXXXXX") in new stack
== Using SIP RTP CoS mark 5
	-- Called SIP/lenwe-ovh/0951XXXXXX
	-- SIP/lenwe-ovh-00000001 is ringing
	-- SIP/lenwe-ovh-00000001 is making progress passing it to SIP/6001-00000000
	-- SIP/lenwe-ovh-00000001 answered SIP/6001-00000000
	-- Remotely bridging SIP/6001-00000000 and SIP/lenwe-ovh-00000001
== Spawn extension (lenwe-internal, 0951XXXXXX, 1) exited non-zero on 'SIP/6001-00000000'
Voici la trace d'un appel passé de l'extérieur vers mes 3 postes locaux. J'ai décroché avec le 6001 et le 6003 est hors-ligne (d'où le warning).
À ce moment là, mon correspondant (extérieur) peut m'entendre mais pas l'inverse. On remarque qu'il n'y a pas de bridging (on devrait voir un truc du genre "Remotely bridging SIP/lenwe-ovh-00000005 and SIP/6001-00000006")

Appel ligne fixe (0951XXXXXX) vers 6XXX
Code:
== Using SIP RTP CoS mark 5
	-- Executing [s@lenwe-incoming:1] Dial("SIP/lenwe-ovh-00000005", "SIP/6001&SIP/6002&SIP/6003,20,t") in new stack
== Using SIP RTP CoS mark 5
	-- Called SIP/6001
== Using SIP RTP CoS mark 5
	-- Called SIP/6002
[Dec 12 12:56:13] WARNING[15946]: app_dial.c:2218 dial_exec_full: Unable to create channel of type 'SIP' (cause 20 - Unknown)
	-- SIP/6001-00000006 connected line has changed. Saving it until answer for SIP/lenwe-ovh-00000005
	-- SIP/6002-00000007 connected line has changed. Saving it until answer for SIP/lenwe-ovh-00000005
	-- SIP/6001-00000006 is ringing
	-- SIP/6002-00000007 is ringing
	-- SIP/6001-00000006 connected line has changed. Saving it until answer for SIP/lenwe-ovh-00000005
	-- SIP/6001-00000006 answered SIP/lenwe-ovh-00000005
== Spawn extension (lenwe-incoming, s, 1) exited non-zero on 'SIP/lenwe-ovh-00000005'
Une idée ? Quelqu'un a déjà réussi à configurer ce genre d'installation ?