Affichage des résultats 1 à 10 sur 15

Discussion: Limité le nombre d'appel different

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre
    Date d'inscription
    février 2011
    Messages
    34
    Downloads
    0
    Uploads
    0
    Merci , c'est vraiment pas mal

    par contre je ne comprend pas un truc dans le code

    Code:
    [distribution-trunks]
    ;trunks are number 1 and 2
    exten => _0X..,1,Set(COUNT=${DB(test/count)})
    ;increment
    exten => _0X.,n,SetVar(COUNT=$[${COUNT} + 1])
    exten => _0X.,n,SetVar(COUNT=${IF($[ ${COUNT} = 3]?1:${COUNT})})
    exten => _0X.,n,Set(DB(test/count)=${COUNT})
    exten => _0X.,n,NoOp(Number dialed is ${EXTEN} by trunk pstn ${COUNT})
    exten => _0X.,n,Macro(dialout-trunk,${COUNT},${EXTEN},,)
    exten => _0X.,n,Macro(outisbusy,)
    Peut tu détaillé chaque ligne, je ne comprend pas certaine fonction du code
    J'ai fais une outbound qui sort sur se le trunk custom qui s'appel test qui lui a le paramètre

    Code:
    local/$OUTNUM$@distribution-trunks
    Par contre cela ne fonctionne pas ,


    Code:
     -- Executing [0633000001@from-internal:1] Set("SIP/222-0000000d", "TIMEOUT(absolute)=3300") in new stack
    Channel will hangup at 2012-03-20 18:32:43.273 GMT.
        -- Executing [0633000001@from-internal:2] NoOp("SIP/222-0000000d", "Calling Out Route: tt") in new stack
        -- Executing [0633000001@from-internal:3] Set("SIP/222-0000000d", "MOHCLASS=default") in new stack
        -- Executing [0633000001@from-internal:4] Set("SIP/222-0000000d", "_NODEST=") in new stack
        -- Executing [0633000001@from-internal:5] Macro("SIP/222-0000000d", "record-enable,,OUT,") in new stack
        -- Executing [s@macro-record-enable:1] GotoIf("SIP/222-0000000d", "1?check") in new stack
        -- Goto (macro-record-enable,s,4)
        -- Executing [s@macro-record-enable:4] ExecIf("SIP/222-0000000d", "1?MacroExit()") in new stack
        -- Executing [0633000001@from-internal:6] Macro("SIP/222-0000000d", "dialout-trunk,4,0633000001,") in new stack
        -- Executing [s@macro-dialout-trunk:1] Set("SIP/222-0000000d", "DIAL_TRUNK=4") in new stack
        -- Executing [s@macro-dialout-trunk:2] GosubIf("SIP/222-0000000d", "0?sub-pincheck,s,1") in new stack
        -- Executing [s@macro-dialout-trunk:3] GotoIf("SIP/222-0000000d", "0?disabletrunk,1") in new stack
        -- Executing [s@macro-dialout-trunk:4] Set("SIP/222-0000000d", "DIAL_NUMBER=0633000001") in new stack
        -- Executing [s@macro-dialout-trunk:5] Set("SIP/222-0000000d", "DIAL_TRUNK_OPTIONS=tr") in new stack
        -- Executing [s@macro-dialout-trunk:6] Set("SIP/222-0000000d", "OUTBOUND_GROUP=OUT_4") in new stack
        -- Executing [s@macro-dialout-trunk:7] GotoIf("SIP/222-0000000d", "1?nomax") in new stack
        -- Goto (macro-dialout-trunk,s,9)
        -- Executing [s@macro-dialout-trunk:9] GotoIf("SIP/222-0000000d", "0?skipoutcid") in new stack
        -- Executing [s@macro-dialout-trunk:10] Set("SIP/222-0000000d", "DIAL_TRUNK_OPTIONS=T") in new stack
        -- Executing [s@macro-dialout-trunk:11] Macro("SIP/222-0000000d", "outbound-callerid,4") in new stack
        -- Executing [s@macro-outbound-callerid:1] ExecIf("SIP/222-0000000d", "0?Set(CALLERPRES()=)") in new stack
        -- Executing [s@macro-outbound-callerid:2] ExecIf("SIP/222-0000000d", "1?Set(REALCALLERIDNUM=222)") in new stack
        -- Executing [s@macro-outbound-callerid:3] GotoIf("SIP/222-0000000d", "1?normcid") in new stack
        -- Goto (macro-outbound-callerid,s,6)
        -- Executing [s@macro-outbound-callerid:6] Set("SIP/222-0000000d", "USEROUTCID=") in new stack
        -- Executing [s@macro-outbound-callerid:7] Set("SIP/222-0000000d", "EMERGENCYCID=") in new stack
        -- Executing [s@macro-outbound-callerid:8] Set("SIP/222-0000000d", "TRUNKOUTCID=hidden") in new stack
        -- Executing [s@macro-outbound-callerid:9] GotoIf("SIP/222-0000000d", "1?trunkcid") in new stack
        -- Goto (macro-outbound-callerid,s,12)
        -- Executing [s@macro-outbound-callerid:12] ExecIf("SIP/222-0000000d", "1?Set(CALLERID(all)=hidden)") in new stack
        -- Executing [s@macro-outbound-callerid:13] ExecIf("SIP/222-0000000d", "0?Set(CALLERID(all)=)") in new stack
        -- Executing [s@macro-outbound-callerid:14] ExecIf("SIP/222-0000000d", "1?Set(CALLERID(all)=hidden)") in new stack
        -- Executing [s@macro-outbound-callerid:15] ExecIf("SIP/222-0000000d", "1?Set(CALLERPRES()=prohib_passed_screen)") in new stack
        -- Executing [s@macro-dialout-trunk:12] GosubIf("SIP/222-0000000d", "1?sub-flp-4,s,1") in new stack
        -- Executing [s@sub-flp-4:1] ExecIf("SIP/222-0000000d", "1?Return()") in new stack
        -- Executing [s@macro-dialout-trunk:13] Set("SIP/222-0000000d", "OUTNUM=0633000001") in new stack
        -- Executing [s@macro-dialout-trunk:14] Set("SIP/222-0000000d", "custom=AMP") in new stack
        -- Executing [s@macro-dialout-trunk:15] ExecIf("SIP/222-0000000d", "0?Set(DIAL_TRUNK_OPTIONS=M(setmusic^default)T)") in new stack
        -- Executing [s@macro-dialout-trunk:16] Macro("SIP/222-0000000d", "dialout-trunk-predial-hook,") in new stack
        -- Executing [s@macro-dialout-trunk-predial-hook:1] MacroExit("SIP/222-0000000d", "") in new stack
        -- Executing [s@macro-dialout-trunk:17] GotoIf("SIP/222-0000000d", "0?bypass,1") in new stack
        -- Executing [s@macro-dialout-trunk:18] GotoIf("SIP/222-0000000d", "1?customtrunk") in new stack
        -- Goto (macro-dialout-trunk,s,22)
        -- Executing [s@macro-dialout-trunk:22] Set("SIP/222-0000000d", "pre_num=AMP:local/") in new stack
        -- Executing [s@macro-dialout-trunk:23] Set("SIP/222-0000000d", "the_num=OUTNUM") in new stack
        -- Executing [s@macro-dialout-trunk:24] Set("SIP/222-0000000d", "post_num=@distribution-trunks") in new stack
        -- Executing [s@macro-dialout-trunk:25] GotoIf("SIP/222-0000000d", "1?outnum:skipoutnum") in new stack
        -- Goto (macro-dialout-trunk,s,26)
        -- Executing [s@macro-dialout-trunk:26] Set("SIP/222-0000000d", "the_num=0633000001") in new stack
        -- Executing [s@macro-dialout-trunk:27] Dial("SIP/222-0000000d", "local/0633000001@distribution-trunks,300,T") in new stack
        -- Called local/0633000001@distribution-trunks
        -- Executing [0633000001@distribution-trunks:1] Set("Local/0633000001@distribution-trunks-07b6;2", "COUNT=") in new stack
      == Spawn extension (distribution-trunks, 0633000001, 2) exited non-zero on 'Local/0633000001@distribution-trunks-07b6;2'
      == Everyone is busy/congested at this time (1:0/0/1)
        -- Executing [s@macro-dialout-trunk:28] NoOp("SIP/222-0000000d", "Dial failed for some reason with DIALSTATUS = CHANUNAVAIL and HANGUPCAUSE = 0") in new stack
        -- Executing [s@macro-dialout-trunk:29] Goto("SIP/222-0000000d", "s-CHANUNAVAIL,1") in new stack
        -- Goto (macro-dialout-trunk,s-CHANUNAVAIL,1)
        -- Executing [s-CHANUNAVAIL@macro-dialout-trunk:1] Set("SIP/222-0000000d", "RC=0") in new stack
        -- Executing [s-CHANUNAVAIL@macro-dialout-trunk:2] Goto("SIP/222-0000000d", "0,1") in new stack
        -- Goto (macro-dialout-trunk,0,1)
        -- Executing [0@macro-dialout-trunk:1] Goto("SIP/222-0000000d", "continue,1") in new stack
        -- Goto (macro-dialout-trunk,continue,1)
        -- Executing [continue@macro-dialout-trunk:1] GotoIf("SIP/222-0000000d", "1?noreport") in new stack
        -- Goto (macro-dialout-trunk,continue,3)
        -- Executing [continue@macro-dialout-trunk:3] NoOp("SIP/222-0000000d", "TRUNK Dial failed due to CHANUNAVAIL HANGUPCAUSE: 0 - failing through to other trunks") in new stack
        -- Executing [continue@macro-dialout-trunk:4] Set("SIP/222-0000000d", "CALLERID(number)=") in new stack
        -- Executing [0633000001@from-internal:7] Wait("SIP/222-0000000d", "1") in new stack
        -- Executing [0633000001@from-internal:8] Congestion("SIP/222-0000000d", "20") in new stack
      == Spawn extension (from-internal, 0633000001, 8) exited non-zero on 'SIP/222-0000000d'
        -- Executing [h@from-internal:1] Macro("SIP/222-0000000d", "hangupcall") in new stack
        -- Executing [s@macro-hangupcall:1] GotoIf("SIP/222-0000000d", "1?skiprg") in new stack
        -- Goto (macro-hangupcall,s,4)
        -- Executing [s@macro-hangupcall:4] GotoIf("SIP/222-0000000d", "1?skipblkvm") in new stack
        -- Goto (macro-hangupcall,s,7)
        -- Executing [s@macro-hangupcall:7] GotoIf("SIP/222-0000000d", "1?theend") in new stack
        -- Goto (macro-hangupcall,s,9)
        -- Executing [s@macro-hangupcall:9] Hangup("SIP/222-0000000d", "") in new stack
      == Spawn extension (macro-hangupcall, s, 9) exited non-zero on 'SIP/222-0000000d' in macro 'hangupcall'
      == Spawn extension (from-internal, h, 1) exited non-zero on 'SIP/222-0000000d'


    Merci

  2. #2
    Asterisk Fan Avatar de fastm3
    Date d'inscription
    août 2010
    Localisation
    Corbeil Essonnes (91)
    Messages
    1 302
    Downloads
    1
    Uploads
    1
    fait un "database put test count 1" sous cli pour "amorcer"

    Code:
    [distribution-trunks] 
    ;trunks are number 1 and 2
    ; on recupere le dernier trunk qui a été utilisé ( on suppose le trunk numero 1 mais ca pourrait etre 5)
    ; C'est pour cela qu'il faut faire le database set 1 fois en init.
    exten => _0X..,1,Set(COUNT=${DB(test/count)}) 
    ;increment, donc si c'etait le trunk 1, COUNT contient maintenant 2 
    exten => _0X.,n,SetVar(COUNT=$[${COUNT} + 1])
    ; si le trunk est egal à 3 , on repart à 1 sinon on ne fait rien. ( cela est en fait une boucle entre une valeur min et max)
    exten => _0X.,n,SetVar(COUNT=${IF($[ ${COUNT} = 3]?1:${COUNT})}) 
    ;on sauve le dernier trunk qu'on va utiliser pour qu'il soit persistent.
    exten => _0X.,n,Set(DB(test/count)=${COUNT})
    ; on ajoute une trace 
    exten => _0X.,n,NoOp(Number dialed is ${EXTEN} by trunk pstn ${COUNT}) 
    ; on dial le numero avec le trunk qu'on a selectionné.
    exten => _0X.,n,Macro(dialout-trunk,${COUNT},${EXTEN},,) 
    exten => _0X.,n,Macro(outisbusy,)
    C'est un exemple. Il faut adapter avec le numero des trunks dans freepbx que tu veux alterner. Ca ne marchera pas sans cela.

    Fastm3

  3. #3
    Membre
    Date d'inscription
    février 2011
    Messages
    34
    Downloads
    0
    Uploads
    0
    Citation Envoyé par fastm3 Voir le message
    C'est un exemple. Il faut adapter avec le numero des trunks dans freepbx que tu veux alterner. Ca ne marchera pas sans cela.

    Fastm3
    Excusez moi, j'essaye vraiment de comprendre se code , mais je vois pas ou je dois définir la COUNT , car mes trunk commence a partir de 2

    Merci

  4. #4
    Membre
    Date d'inscription
    février 2011
    Messages
    34
    Downloads
    0
    Uploads
    0
    Âpres avoir essayé a plusieurs reprise je vois vraiment pas se qui cloche .

    Je voudrais savoir fastm3 dans ton tuto tu serais pas trompé dans la ligne

    "Ici le numero de trunk est le numero 2. On pourrais vérifier cela dans /etc/asterisk/sip_additionnal.conf"

    Car pour vérifier chez moi c'est le fichier extensions_additional.conf
    Avec les lignes
    OUT_1 = SIP/MAISONSIP
    OUTCID_1 = 0900000059

    Ah moins que sa soit moi qui comprend vraiment rien de rien

    Sinon je tiens vraiment à UP se poste car la après avoir lu plusieurs livre j'ai toujours rien qui se passe, J'ai bien mon COUNT=1 , mais rien numérote c'est sa que je comprend pas , J'ai une erreur
    Code:
    NoOp("SIP/222-00000040", "Dial failed for some reason with DIALSTATUS = CHANUNAVAIL and HANGUPCAUSE = 0")
    Je la comprend pas cette erreur

  5. #5
    Asterisk Fan Avatar de fastm3
    Date d'inscription
    août 2010
    Localisation
    Corbeil Essonnes (91)
    Messages
    1 302
    Downloads
    1
    Uploads
    1
    oui , c'est extensions_additionnal.conf ( il y en a un qui suit au moins. ) ou tout simplement dans l'url affichée dans ton navigateur quand tu édites le trunk avec freepbx.
    Affiche les traces complètes avant avec le dial et au debut de l'entree dans le contexte,
    mais ton trunk sip marche t'il deja tout seul ?

    Cree une outbound route avec juste ce trunk 1 et mets la au debut pour tester, et il faut que ca marche deja comme cela juste pour verifier que ton trunk est ok.

    Aussi, pour alterner , il faut au moins 2 trunks. Donc donne les numeros de trunks et montre ton contexte adapté aussi.

    Il faut les logs et le dialplan pour esperer voir ce qui ne va pas.
    Fastm3.

  6. #6
    Membre
    Date d'inscription
    février 2011
    Messages
    34
    Downloads
    0
    Uploads
    0
    J'ai 3 trunks sip qui fonctionne parfaitement ( J'ai mon entreprise qui est dessus, Ligne portable, Ligne Fix , est une ligne Freebox pour recevoir les appel de la maison sur une Extension perso )

    Trunks 1,2,3

    http://sip98.home***.fr/admin/config...tdisplay=OUT_1

    Y a t'il possibilité de remplacé l'application de [distribution-trunks]
    par une application tout simple sans la database , juste appel avec se Trunks est c'est tout , j'ai essayé de le faire mais j'ai pas l'impression que sa passe , J'ai l'impression que le probleme est ailleurs

    J'essaye de passé un appel avec le Custom

    Code:
     http://pastebin.com/UJBTrCGw
    J'ai upload le code sur un site il fais 10000 Caractère sa passe pas sur le forum

    Merci encore pour l'aide

  7. #7
    Asterisk Fan Avatar de fastm3
    Date d'inscription
    août 2010
    Localisation
    Corbeil Essonnes (91)
    Messages
    1 302
    Downloads
    1
    Uploads
    1
    C'est ca qui ne marche pas:

    Code:
     -- Executing  [s@macro-dialout-trunk:27] Dial("SIP/222-0000004a",  "local/0633000000@distribution-trunks,300,M(setmusic^none)T") in new  stack
    
      -- Couldn't call local/0633000000@distribution-trunks
    Ils ne trouve pas le contexte probablement. En fait, il n'atteint pas le contexte distribution-trunks.
    As tu ajouté les "notice" dans les logs a afficher dans la console ? Mais bon , c'est un autre sujet mais ca t'aurait afficher un message explicite.

    Il faut qu'il puisse trouver le contexte.
    Arghhh, si tu as suivi le tuto à la lettre, il y a une erreur, les dialplans customs , c'est dans extensions_custom.conf . Tu l'avais mis la ? Sinon, ajoute le et fait un reload.
    Ca devrait aller mieux.
    Fastm3.

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •