Affichage des résultats 1 à 10 sur 12

Discussion: Xivo : modification des macros

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Association Avatar de quintana
    Date d'inscription
    août 2010
    Localisation
    Québec
    Messages
    1 084
    Downloads
    0
    Uploads
    0
    Pour avant tu as la sous routine et pour après tu as directement dans l'interface web sur non réponse que tu peux choisir une action ou un personnalisé.
    Découvrez Wazo sous licence GPLv3 et accessible pour tous : http://www.wazo.community
    Blog Wazo : http://blog.wazo.community
    Wazo est un fork de XiVO.
    Suivez moi sur Twitter !

  2. #2
    Membre Junior
    Date d'inscription
    septembre 2010
    Messages
    24
    Downloads
    0
    Uploads
    0
    Pour en revenir à ce sujet, concernant la macro user.
    Je n'ai pas vu de sous-routine définit préalablement comme le XIVO_GROUP_MEMBER_SUBROUTINE dans la macro group.
    Donc quelle sous-routine utiliser avant l'appel ?
    J'ai vu qu'on peut en créer mais dans ce cas, elles ne concernent que :
    * Les appels entrant
    * Les chambres de conférence
    * Les files d'attente
    * Les utilisateurs
    * Les groupes
    Or j'ai envie que ce soit fait de manière globale, et ne pas avoir à repasser sur chaque utilisateur pour indiquer la sous-routine à utiliser si c'est possible.

  3. #3
    Membre Junior
    Date d'inscription
    septembre 2010
    Messages
    24
    Downloads
    0
    Uploads
    0
    Je vais détailler un peu plus ce que je souhaite faire. Ici j'ai besoin de modifier la macro extensions_lib_user pour faire des renvois d'appels (qui colle avec un script php qui a été développé pour permettre à un utilisateur de choisir son type de renvoi).
    Il existe peut être une façon plus simple de faire ce que je vais détailler, mais je souhaite rester dans un premier temps sur de l'intégration.

    Donc dans la macro user, j'execute le code suivant juste avant la ligne:
    exten = s,n,GotoIf($[${GROUP_COUNT(${XIVO_DSTID}@XIVO_USER)} >= ${XIVO_SIMULTCALLS}]?BUSY,1)

    ; do not disturb forward in any case
    exten = s,n,Set(num_to_forward_dnd=${DB(DND/${XIVO_DSTNUM})})
    exten = s,n,GotoIf($["${num_to_forward_dnd}" = "YES"]?DND,1:nodnd)
    exten = s,n(nodnd),NoOp

    ;call forward unconditionnal
    exten = s,n,Set(num_to_forward_cf=${DB(CF/${XIVO_DSTNUM})})
    exten = s,n,GotoIf(${num_to_forward_cf}?cf:nocf)
    exten = s,n(nocf),NoOp

    ; forward if busy (instead of waiting for voicemail, forward it to a number specified)
    exten = s,n,Set(num_to_forward_cfb=${DB(CFB/${XIVO_DSTNUM})})
    exten = s,n,GotoIf($[ $["${GROUP_COUNT(${XIVO_DSTID}@XIVO_USER)}" >= "1"] & $["${num_to_forward_cfb}" != ""] ]?cfb:nocfb)
    exten = s,n(nocfb),NoOp


    Après :

    exten = s,n,Goto(${DIALSTATUS},1)
    exten = s,n,MacroExit()

    J'ai:

    ;call forward unconditionnal
    exten = s,n(cf),Playback(find-user)
    exten = s,n(cf),Set(num=${REGEX("^0[67].*$" ${num_to_forward_cf})})
    exten = s,n(cf),GotoIf($["${num}" = "1"]?cf1:cf2)
    exten = s,n(cf1),Dial(CAPI/ISDN1/${num_to_forward_cf}/d)
    exten = s,n(cf2),Dial(SIP/${num_to_forward_cf},20,tT)
    exten = s,n,Goto(voicemail,1)

    ;call forward busy
    exten = s,n(cfb),Playback(find-user)
    exten = s,n(cfb),Set(num=${REGEX("^0[67].*$" ${num_to_forward_cfb})})
    exten = s,n(cfb),GotoIf($["${num}" = "1"]?cfb1:cfb2)
    exten = s,n(cfb1),Dial(CAPI/ISDN1/${num_to_forward_cfb}/d)
    exten = s,n(cfb2),Dial(SIP/${num_to_forward_cfb},20,tT)
    exten = s,n,Goto(voicemail,1)

    ;call forward unavailable
    exten = NOANSWER,n,Set(num_to_forward_cfu=${DB(CFU/${XIVO_DSTNUM})})
    exten = NOANSWER,n,GotoIf(${num_to_forward_cfu}?cfu:nocfu)
    exten = NOANSWER,n(cfu),Playback(find-user)
    exten = NOANSWER,n(cfu),Set(num=${REGEX("^0[67].*$" ${num_to_forward_cfu})})
    exten = NOANSWER,n(cfu),GotoIf($["${num}" = "1"]?cfu1:cfu2)
    exten = NOANSWER,n(cfu1),Dial(CAPI/ISDN1/${num_to_forward_cfu}/d)
    exten = NOANSWER,n(cfu2),Dial(SIP/${num_to_forward_cfu},20,tT)
    exten = NOANSWER,n(cfu2),Goto(voicemail,1)
    exten = NOANSWER,n(nocfu),NoOp

    J'ai essayé de déninir une sous-routine XIVO_USERPREPROCESS_SUBROUTINE = fwd-user-one sans succès.
    Je voudrais avoir quelques pistes pour qu'à la prochaine mise à jour, tout ne part pas...

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
  •