PDA

Voir la version complète : transfert appels entre 2 asterisk et un trunk SIP.



christ069
15/07/2014, 21h54
Bonjour,

Nous avons une passerelle Patton et un serveur asterisk sur 2 sites différents.
Les deux serveurs seront relié via un trunk sip.

Dans le cas où un utilisateur du premier site transfert un appel (reçu depuis l’extérieur depuis la patton) sur le deuxième site mais que par la suite ce deuxième utilisateur transfert à nouveau ce même appel vers le 1er site, Est-ce que la communication est maintenue sur 2 ème site ?

Nous n'utilisons pas "RTP media direct". dans ce cas, est ce que la communication fait l'aller-retour ou le premier serveur asterisk détecte la boucle (le retour) et interconnecte la passerelle directement avec le dernier correspondant ? (précision : il s'agit de transfert indirect)

merci pour vos réponses.

jean
15/07/2014, 23h55
Il faut activer le RTP MEDIA DIRECT (anciennement canreinvite) pour que l'un des serveurs declenche le processus d'établissement direct du media - attention, il y a pas mal de pre-requis (genre, les terminaux et serveurs ne doivent pas etre nattés, etc...)

christ069
16/07/2014, 09h16
Merci pour ta réponse, cependant, on ne souhaite pas utiliser le direct media avec les téléphones. (on souhaite laisser la possibilité pour les utilisateurs d’enregistrer la communication (réunion par téléphone) ... même si effectivement, c'est très rare)

Comment le flux rtp va véhiculer dans le scénario suivant ?

1)
Appel vers l'utilisateur A1 du site A :
Patton site A --> Asterisk site A --> User A1 site A

2)
l'utilisateur A1 du site A transfert l'appel vers l'utilisateur B2 du site B
Patton site A --> Asterisk site A -(trunk)-> Asterisk site B --> User B2 site B

3)
Ensuite, l'utilisateur B2 du site B transfert vers l'utilisateur A3 du site A (sans direct media nul part)
ça donne :
Patton site A --> Asterisk site A -(trunk)-> Asterisk site B -(trunk)-> Asterisk site A --> User A3 site A
ou
Patton site A --> Asterisk site A --> User A3 site A

2 bis)
Cependant, si on active le direct media uniquement sur les passerelles pattons, lorsque l'utilisateur A1 du site A transfert l'appel vers l'utilisateur B2 du site B, le flux RTP passe t-il à travers le trunk comme ceci :
Patton site A --> Asterisk site A -(trunk)-> Asterisk site B --> User B2 site B
ou passe en direct :
Patton site A --> -(directmedia)-> Asterisk site B --> User B2 site B

3 bis bis)
Et, si on passe en direct, lorsque ensuite, l'utilisateur B2 du site B transfert vers l'utilisateur A3 du site A
Est ce que c'est l'asterisk du site B qui établit le flux RTP avec l'utilisateur A3
Patton site A --> -(directmedia)-> Asterisk site B --> User A3 site A
ou
Patton site A --> Asterisk site A --> User A3 site A


je sais pas si c'est assez clair ?

jean
16/07/2014, 15h54
Malheureusement, j'ai pas assez joué avec cette fonctionnalité pour te guider... quelques éléments de réflexion et une suggestion:

le mécanisme en gros, est si tout le monde a directmedia, et que chacun donne **dans** les paquets sip une adresse ip que tous les autres peuvent joindre, le serveur va alors déclencher l'envoi d'invite avec les adresses des endpoint et se sort de la boucle (re-invite).

Un serveur asterisk ne connait que les deux extrémité avec lesquelles il discute. donc, dans ton cas, A ne connait que la passerelle patton et le serveur B. La question à 1000 francs, si A sort de la boucle et met B en flux direct avec la Patton, B peut il essayer de se sortir à son tour, et le re-invite remonte-t-il jusqu'à la patton ?
Ca me fait penser à: https://www.youtube.com/watch?v=Uoz88R2ueCU

Le mieux est de monter une maquette avec deux VM et deux postes sur le meme LAN, et de tracer avec wireshark/tcpdump/ngrep

christ069
16/07/2014, 22h13
Merci pour la video :)

Effectivement, le mieux c'est de le tester sur une maquette ...

Je ferais un retour une fois les tests effectuée.