Affichage des résultats 1 à 8 sur 8

Discussion: Les priorités dans le fichier extensions.conf

  1. #1
    Membre Association Avatar de cedricscha
    Date d'inscription
    août 2010
    Localisation
    Geneve/Suisse
    Messages
    578
    Downloads
    1
    Uploads
    0

    Les priorités dans le fichier extensions.conf

    Voici quelques lignes pour rappeler les bases des priorités dans le fichier extensions.conf....

    Pour rappel, les priorités sont la deuxièmes parties dans les lignes présentes dans le fichier extensions.conf (en rouge dans les exemples suivant) :
    Code:
    exten => s,1,Answer()
    
    exten => _XXXX,h,Hangup()
    
    exten => 1234,4,Wait(2)
    
    exten => 77,n,Playback(hello-world)

    Pour information, Asterisk n'a pas besoin d'ordre spécifique pour fonctionner si on utilise les chiffres dans les priorités..... Ainsi, l'exemple suivant fonctionnera de la même manière que le suivant.....

    Code:
    exten => s,1,Answer()
    exten => s,2,Wait(2)
    exten => s,3,Playback(hello-world)
    exten => s,4,Hangup()
    Code:
    exten => s,4,Hangup()
    exten => s,2,Wait(2)
    exten => s,1,Answer()
    exten => s,3,Playback(hello-world)
    Par contre, asterisk ne supporteras pas des sauts dans votre numérotation de priorités.... ainsi l'exemple suivant ne fonctionnera pas.... enfin restera bloqué à la priorité 2 :

    Code:
    exten => s,1,Answer()
    exten => s,2,Wait(2)
    exten => s,6,Playback(hello-world)
    exten => s,7,Hangup()
    Si vous prenez la décision d'utiliser la numérotation, n'oublier pas donc qu'en cas d'oubli d'une action, vous devrez renumérotez toutes vos priorités......

    C'est la raison pour laquelle, la priorité : n à été ajoutée à asterisk afin d'éviter d'eternelle étape de renumérotation......

    Elle s'utilise comme suit :

    Code:
    exten => s,1,Answer()
    exten => s,n,Wait(2)
    exten => s,n,Playback(hello-world)
    exten => s,n,Hangup()

    La priorité 1 doit toujours exister c'est elle qui détermine ou asterisk doit débuter.

    Ainsi il est beaucoup plus simple d'ajouter une ligne oubliée

    Je vous entends déjà crier dans le fond si,si je vous entends.....

    Comment fais-t'on pour utiliser un Goto, GotoIf ? Hein Comment ?
    Ben c'est tout simple :

    voici un exemple de code :

    Code:
    exten => s,1,Answer()
    exten => s,2,Wait(2)
    exten => s,3,Goto(5)
    exten => s,4,Hangup()
    exten => s,5,Playback(hello-world)
    exten => s,6,Hangup()
    Et voici sa solution avec la priorité n :

    Code:
    exten => s,1,Answer()
    exten => s,n,Wait(2)
    exten => s,n,Goto(son)
    exten => s,n,Hangup()
    exten => s,n(son),Playback(hello-world)
    exten => s,n,Hangup()

    J'entends également :

    Comment fais-t'on pour utiliser un jump dans le dialplan..... ? Hein Comment ?
    La aussi c'est tout simple, voici la solutions....

    Code:
    exten => s,1(Appel),Dial(SIP/${EXTEN})
    exten => s,n,Hangup()
    exten => s,Appel+101,Playback(CollaborateurAbscent)
    exten => s,n,Hangup()

    J'espère que cela vous aidera
    Dernière modification par cedricscha ; 10/09/2010 à 19h36.
    Cédric
    ---------------------------------------------------------------
    Rejoignez l'Association Asterisk France : http://www.asterisk-france.org

    Envie de mettre des étoiles dans les yeux de vos clients : EasyPyro.ch

    On a pas inventé l'électricité en cherchant à améliorer la bougie...
    ---------------------------------------------------------------

  2. #2
    Membre Association
    Date d'inscription
    août 2010
    Localisation
    région parisienne
    Messages
    386
    Downloads
    0
    Uploads
    0
    Très Bon tuto, beaucoup de questions ou d'erreurs sont dues au priorités quand on debute.

    Je mets le sujet en important pour qu'il reste visible.

    Merci

  3. #3
    Membre Junior
    Date d'inscription
    mars 2011
    Messages
    26
    Downloads
    0
    Uploads
    0
    Bonjour,
    Mais à quoi correspond la priorité "h"

  4. #4
    Membre
    Date d'inscription
    septembre 2010
    Localisation
    Lorient
    Messages
    66
    Downloads
    0
    Uploads
    0
    h correspond à hangup...

    Lors d'un hangup d'un channel, celà peux te permettre d'effectuer certaines opérations...

  5. #5
    Membre Association Avatar de cedricscha
    Date d'inscription
    août 2010
    Localisation
    Geneve/Suisse
    Messages
    578
    Downloads
    1
    Uploads
    0
    Citation Envoyé par plouf Voir le message
    h correspond à hangup...

    Lors d'un hangup d'un channel, celà peux te permettre d'effectuer certaines opérations...
    c'est juste,

    Citation Envoyé par bibi Voir le message
    Bonjour,
    Mais à quoi correspond la priorité "h"
    Mais ce n'est pas une priorité, mais une extension.

    Cela s'utilise comme cela :

    Code:
    exten = h,1,NoOp(Extension h)
    exten = h,n,.....
    Et non pas :

    Code:
    exten = 111,h,NoOp(Extension h qui ne fonctionne pas)
    Dernière modification par cedricscha ; 27/04/2011 à 08h33.
    Cédric
    ---------------------------------------------------------------
    Rejoignez l'Association Asterisk France : http://www.asterisk-france.org

    Envie de mettre des étoiles dans les yeux de vos clients : EasyPyro.ch

    On a pas inventé l'électricité en cherchant à améliorer la bougie...
    ---------------------------------------------------------------

  6. #6
    Membre Junior
    Date d'inscription
    octobre 2011
    Messages
    10
    Downloads
    0
    Uploads
    0
    Perso je préfère utiliser :

    Code:
    exten => s,1,Answer()
     same => n,Wait(2)
     same => n,Playback(hello-world)
     same => n,Hangup()
    ça rend le code un peu plus clair, 1 ligne = 1 étape coder de façon séquentielle c'est quand même plus intuitif code dans tout langage de programmation : actions, conditions, boucles, fonctions...

  7. #7
    Membre Junior
    Date d'inscription
    février 2013
    Messages
    7
    Downloads
    0
    Uploads
    0

    Help

    Bonjour cedricscha,
    tu as l'air super calé moi je suis un n.....

    J'ai 4 Trunk sur 4 port FXO d'une TDM410P qui fonctionnent tres bien séparément en composant un préfixe pour les utiliser.
    J'ai un soucis je voudrais ne plus avoir de préfixe et qu'ils basculent automatiquement quand ils sont HS ou occupé.

    J'avais testé ca sans succés (pour tester le basculement entre 2 Trunk):

    vi /etc/asterisk/extensions_custom.conf

    [from-pstn-custom]
    exten => _0[12345679]XXXXXXXX,1,Dial(TrunkZap01/${exten})
    exten => _0[12345679]XXXXXXXX,n,Dial(TrunkZap02/${exten})

    j'ai AsteriskNow avec freepbx (je sais c'est pas top)

    merci d'avance

  8. #8
    Asterisk Fan Avatar de fastm3
    Date d'inscription
    août 2010
    Localisation
    Corbeil Essonnes (91)
    Messages
    1 302
    Downloads
    1
    Uploads
    1
    C'est une question freepbx. Pose la question plutot dans la section correspondante si les elements ci dessous ne suffisent pas. Avec les groupes dahdi et la gestion de failover , tu dois pouvoir gerer cela dans l'interface de freepbx ( les outbounds routes ) . Attention, la gestion de failover vers les trunks en cas de status busy retourné fait qu'on ne continue pas les trunks suivants.
    Il faut donc bien specifier le nombre de canaux max et etre au moins en freepbx 2.9 qui change un peu.
    Mais l'utilisation des groupes dahdi dans freepbx est une autre solution. ( un seul trunk freepbx pour le groupe , dahdi gerera alors le dispatch )
    from-pstn-custom ne t'aidera aucunement pour cela. Tu dois melanger un peu.
    Eventuellement, tu as les customs trunks pour faire vraiment tout ce que tu veux pour une gestion sur mesure de l'utilisation des trunks. Mais la, ca demande de comprendre un peu le dialplan freepbx.
    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
  •