Problème de transfert d'appel

Discussion in 'Elastix 2.x' started by newnet82, Sep 29, 2009.

  1. newnet82

    Joined:
    Apr 25, 2009
    Messages:
    57
    Likes Received:
    0
    Bonjour,

    Mon objectif est de transférer un appel depuis l'extension 302.

    Depuis l'intérieur (extension 302) j'appelle un n° externe (06XXXXXX01).

    Je veux faire un transfert d'appel vers une extension (303) Tout est OK
    Je veux faire un transfert d'appel vers un n° externe (06XXXXXX02) la connexion se fait, mais je n'ai pas le son sur l'UN des portables.

    J'ai lu divers truc, dont un post sur ce forum qui dit de mettre

    exten => s,1,Background(silence/2)

    j'ai essayé de mettre cette ligne à divers endroit, mais le résultat est toujours le même je n'ai pas le son sur l'UN des téléphones.

    Quelqu'un aurait une solution :)) ) ou du moins une idée ?

    Merci
     
  2. danardf

    Joined:
    Dec 3, 2007
    Messages:
    8,069
    Likes Received:
    12
    salut.

    Tu l'as mis où ton exten => s,1,Background(silence/2) ?
     
  3. newnet82

    Joined:
    Apr 25, 2009
    Messages:
    57
    Likes Received:
    0
    Dans extensions_override_freepbx.conf :

    avant :
    exten => s,n,Dial(${OUT_${DIAL_TRUNK}}/.......


    Dans extensions.conf

    dans le macro-dialout
    avant exten => s,8,Dial(${OUT_${...

    dans macro-dialout-default
    avant exten => s,8,Dial(${OUT_${...
     
  4. danardf

    Joined:
    Dec 3, 2007
    Messages:
    8,069
    Likes Received:
    12
    Ben je pense que dans extension.conf, c'est pas la bonne idée, car freepbx doit écraser la conf de ce fichier par la sienne, si je ne me trompe, non?!

    extensions_override_freepbx.conf ça doit être bon.

    Je dirais qu'il faut recopier la macro dans ce fichier et le modifier et ainsi obtenir un truc comme:

    [macro-dialout]
    exten => s,1,Macro(user-callerid,SKIPTTL)
    exten => s,2,GotoIf($["${ECID${CALLERID(number)}}" = ""]?5)
    exten => s,3,Set(CALLERID(all)=${ECID${CALLERID(number)}})
    exten => s,4,Goto(7)
    exten => s,5,GotoIf($["${OUTCID_${ARG1}}" = ""]?7)
    exten => s,6,Set(CALLERID(all)=${OUTCID_${ARG1}})
    exten => s,7,Set(length=${LEN(${DIAL_OUT_${ARG1}})})
    exten => s,8,Background(silence/2)
    exten => s,9,Dial(${OUT_${ARG1}}/${ARG2:${length}})
    exten => s,10,Playtones(congestion)
    exten => s,11,Congestion(5)
    exten => s,119,Macro(outisbusy)


    ; dialout using default OUT trunk - no prefix
    [macro-dialout-default]
    exten => s,1,Macro(user-callerid,SKIPTTL)
    exten => s,2,Macro(record-enable,${CALLERID(number)},OUT)
    exten => s,3,Macro(outbound-callerid,${ARG1})
    exten => s,4,Background(silence/2)
    exten => s,5,Dial(${OUT}/${ARG1})
    exten => s,6,Playtones(congestion)
    exten => s,7,Congestion(5)
    exten => s,105,Macro(outisbusy)


    Faire attention au chiffre dans ta ligne:
    exten => s,1,Background(silence/2)

    Ce chiffre doit suivre la séquence dans décale les autres lignes.

    Je devais faire des essais mais je n'ai pas eu le temps. :blush:
     
  5. danardf

    Joined:
    Dec 3, 2007
    Messages:
    8,069
    Likes Received:
    12
    Ha... J'oubliais.
    Que donne la trace dans le mode CLI?
    Vois-tu le Background(silence/2) s'exécuter lors de ton renvoi?
     
  6. newnet82

    Joined:
    Apr 25, 2009
    Messages:
    57
    Likes Received:
    0
    Dans le fichier extensions_override_freepbx.conf j'ai mis les macro macro-dialout et macro-dialout-default, j'ai fait amportal restart et j'ai testé. Dans le *cli je ne vois pas passer le Background(silence/2).

    Mais par contre je vois passer des macro-dialout-trunk.

    Donc j'ai mis la ligne dans la macro [macro-dialout-trunk] juste avant la ligne Dial. Ce qui donne :

    ...
    exten => s,n(outnum),Set(the_num=${OUTNUM})
    exten => s,n,Background(silence/2)
    exten => s,n(skipoutnum),Dial(${pre_num:4}${the_num}${post_num},300,${DIAL_TRUNK_OPTIONS})
    exten => s,n,Goto(s-${DIALSTATUS},1)
    ...

    J'ai fait amportal restart et j'ai testé. Dans le *cli je vois passer le Background(silence/2). Donc, il devrait servir.
    Cependant rien ne change.
    Est-il vraiment bien placé ? Je suppose puiqu'il est toujours mis juste avant un DIAL(...)
     
  7. danardf

    Joined:
    Dec 3, 2007
    Messages:
    8,069
    Likes Received:
    12
    Normalement oui, mais on ne sait jamais.
    Et si tu le places après le Dial?
     
  8. newnet82

    Joined:
    Apr 25, 2009
    Messages:
    57
    Likes Received:
    0
    Ca ne change rien.
     
  9. newnet82

    Joined:
    Apr 25, 2009
    Messages:
    57
    Likes Received:
    0
    Petit complément d'info :

    Dans le cas de figure :
    L'extension 302 appelle un n° externe (06XXXXXX01).

    Je fais un transfert d'appel vers un n° externe (06XXXXXX02) la connexion se fait, mais je n'ai pas le son sur le 06XXXXXX02.

    Dans le cas de figure :
    L'extension 302 appelle un n° externe (06XXXXXX02).

    Je fais un transfert d'appel vers un n° externe (06XXXXXX01) la connexion se fait, mais je n'ai pas le son sur le 06XXXXXX01.
     
  10. danardf

    Joined:
    Dec 3, 2007
    Messages:
    8,069
    Likes Received:
    12
    C'est chiant ce phénomène. Il doit manquer une info vers l'opérateur sur le codec employé, car si tu fais un sip show channels tu t'aperçois qu'il y a un channel sans codec!
    De par le fait, si tu initialises un fichier son, (silence), l'opérateur doit comprendre que tu as tels type de codecs certainement, ou un truc de ce genre.
     
  11. newnet82

    Joined:
    Apr 25, 2009
    Messages:
    57
    Likes Received:
    0
    Je percute !! Mon trunk n'est pas un trunk sip mais un trunk misdn. Ce sont donc encore les panoupanous qui me posent problème.
     
  12. danardf

    Joined:
    Dec 3, 2007
    Messages:
    8,069
    Likes Received:
    12
    Hmmm. Il y a peut-être un codec à valider par défaut sur la config RNIS (ISDN)?!
    G711a ou G711µ il me semble non?
     
  13. newnet82

    Joined:
    Apr 25, 2009
    Messages:
    57
    Likes Received:
    0
    Un complément d'information. Le misdn show channels me donne :

    * Pid:37 Prt:1 Ch:1 Mode:TE Org:* dad:s oad:0123456789 rad: ctx:macro-dialout-tr
    unk state:CONNECTED
    --> astname: mISDN/1-u183
    --> ch_l3id: 9001e
    --> ch_addr: 50010102
    --> bc_addr: 50010102
    --> bc_l3id: 9001e
    --> display:
    --> activated: 0
    --> state: BCHAN_BRIDGED
    --> capability: Speech
    --> echo_cancel: 1
    --> notone : rx 0 tx:0
    --> bc_hold: 0
    Bc:0x9f6a9bc Ast:0x9f3c590
    * Pid:38 Prt:2 Ch:1 Mode:TE Org:* dad: oad:9876543210 rad: ctx:from-pstn state:C
    ONNECTED
    --> astname: mISDN/3-u189
    --> ch_l3id: 9001f
    --> ch_addr: 50010202
    --> bc_addr: 50010202
    --> bc_l3id: 9001f
    --> display:
    --> activated: 0
    --> state: BCHAN_BRIDGED
    --> capability: Speech
    --> echo_cancel: 1
    --> notone : rx 0 tx:0
    --> bc_hold: 0

    n° 0123456789 = num appelé en premier par l'extension 302
    N° 9876543210 = num à qui l'on veut tranférer l'appel
     
  14. apcloic

    Joined:
    May 6, 2009
    Messages:
    90
    Likes Received:
    0
    Slt,

    Ca fait un moment que je ne suis pas revenu sur le forum...vacances, puis re-boulot à n'en plus finir ! ;)
    Bref, est-ce que qqn a réussi à résoudre ce problème et trouvé où placer cette fameuse ligne :
    exten => s,1,Background(silence/2)
    Sur mon serveur Elastix, j'ai 2 trunks SIP (OVH) et 1 trunk SIP (Keyyo) + une B410P reliée à 2 T0.
    En RNIS, aucun problème : je peux transférer des appels avec le son qui va bien.
    Si je passe par un trunk OVH ou Keyyo --> connexion Ok mais pas de son (ni d'un côté ni de l'autre).

    En attendant, je bidouille avec la fonction follow-me + confirm calls pour au moins permettre le renvoi vers portable quand la personne est en déplacement, mais ça ne permet pas de faire du transfert à la volée

    Merci d'avance ;)
     
  15. newnet82

    Joined:
    Apr 25, 2009
    Messages:
    57
    Likes Received:
    0
    Bonsoir,

    Dans le cas décrit ici, j'ai jeté l'éponge. Je n'offrre pas cette fonctionnalité aux utilisateurs (pour l'instant)
     
  16. apcloic

    Joined:
    May 6, 2009
    Messages:
    90
    Likes Received:
    0
  17. danardf

    Joined:
    Dec 3, 2007
    Messages:
    8,069
    Likes Received:
    12
    Allez, un karma pour apcloic :laugh:

    Bien apcloic, super.
    Merci pour tout. ;)
     
  18. newnet82

    Joined:
    Apr 25, 2009
    Messages:
    57
    Likes Received:
    0
    La solution de apcloic ne marche pas pour moi.
    Je pense qu'elle ne fonctionne pas dans le cas où l'on sort de elastix sur autre chose qu'un lien IP (ie des T0 dans mon cas)
     
  19. apcloic

    Joined:
    May 6, 2009
    Messages:
    90
    Likes Received:
    0
    On doit pouvoir trouver une solution parce que sur mon serveur j'ai les 2 types de liens :
    - du SIP (vers OVH et Keyyo)
    - 2 T0 France Telecom sur une Digium B410P

    Pour les transferts d'appels, jusqu'à ce que je mette le "progressinband=yes", la voix ne passait pas en SIP.
    En revanche, ça a tjs très bien fonctionné via les T0.

    Au niveau de mon trunk ISDN, j'utilise mISDN et la config est ultra basique :
    Outbound Caller ID : mon numéro de tête de ligne
    custom dial string : mISDN/g:isdn/$OUTNUM$

    Au niveau des extensions utilisant les T0 pour sortir (oui, je sors encore des appels en numeris parce que au moins j'ai la présentation du numéro dessus, pas comme chez OVH qui refuse de le faire...pour l'instant...soit-disant !!) :
    canreinvite = no
    context = from-internal
    host = dynamic
    type = friend
    nat = yes
    port = 5060
    qualify = yes

    Bonne soirée, loic
     
  20. newnet82

    Joined:
    Apr 25, 2009
    Messages:
    57
    Likes Received:
    0
    Bonjour,

    Pour ma part dans les extensions j'ai :

    type=friend
    secret=12345
    qualify=yes
    port=5060
    pickupgroup=
    nat=yes
    mailbox=101@device
    host=dynamic
    dtmfmode=rfc2833
    dial=SIP/101
    context=from-internal
    canreinvite=no
    callgroup=
    callerid=device <101>
    accountcode=
    call-limit=50


    Et pourtant ça ne passe pas.

    Si je fais un *72, le son est bon dans tous les sens.
    Si je fais un ## un des interlocuteurs n'entend rien.
     

Share This Page