Day/Night Mode et BLF

Discussion in 'Elastix 2.x' started by paguira, Dec 23, 2009.

  1. paguira

    Joined:
    Jan 17, 2008
    Messages:
    127
    Likes Received:
    0
    Bonjour,

    Est il possible de superviser (BLF) le Day/Night Mode à laide de X-lite ?
    Actuellement je pense créer une extension dont je ferais changer d'état BUSY ou INUSE lors de la composition de *78 et *79 mais je ne sais pas comment m'y prendre.
     
  2. danardf

    Joined:
    Dec 3, 2007
    Messages:
    8,069
    Likes Received:
    12
    Hmmm. Pas évident à en lire les forums.
    SIP/100&Custom: DAYNIGHT0 ou DEVDND100....
    Controversé par le bruit que le Custom ne fonctionne pas sur Asterisk 1.4...
    Je serai assez d'avis pour le dernier point.
    Dans les hints si je met SIP/100&Custom: DEVDND100 et que je suis en DND, dans le hint, l'info est IDLE.

    A moins qu'il y ait quelques chose à mettre dans sip_general_custom.conf.!?
     
  3. danardf

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

    Joined:
    Dec 3, 2007
    Messages:
    8,069
    Likes Received:
    12
    Curieux.. Pourtant sur Elastix en mode CLI, si on regarde bien les fonctions, on trouve bien:

    Code:
    CLI>core show function DEVICE_STATE
    CLI>
      -= Info about function 'DEVICE_STATE' =-
    
    [Syntax]
    DEVICE_STATE(device)
    
    [Synopsis]
    Get or Set a device state
    
    [Description]
      The DEVICE_STATE function can be used to retrieve the device state from any
    device state provider.  For example:
       NoOp(SIP/mypeer has state ${DEVICE_STATE(SIP/mypeer)})
       NoOp(Conference number 1234 has state ${DEVICE_STATE(MeetMe:1234)})
    
      The DEVSTATE function can also be used to set custom device state from
    the dialplan.  The "Custom:" prefix must be used.  For example:
      Set(DEVICE_STATE(Custom:lamp1)=BUSY)
      Set(DEVICE_STATE(Custom:lamp2)=NOT_INUSE)
    You can subscribe to the status of a custom device state using a hint in
    the dialplan:
      exten => 1234,hint,Custom:lamp1
    
      The possible values for both uses of this function are:
    UNKNOWN | NOT_INUSE | INUSE | BUSY | INVALID | UNAVAILABLE | RINGING
    RINGINUSE | ONHOLD
    
    Donc il doit y avoir un moyen..

    Sur ce lien, il y aurait un possibilité :http://www.voip-info.org/wiki/view/Asterisk+day+night+mode+example.

    Bon... on va essayer de trouver. :)
     
  5. cgill2510

    Joined:
    Dec 1, 2009
    Messages:
    18
    Likes Received:
    0
    Et voila la solution !. Dans extension_additional.conf remplacer les DEVSTATE par DEVICE_STATE, un reload et miracle *280 change d'état.

    Code:
    [app-daynight-toggle]
    include => app-daynight-toggle-custom
    exten => *280,1,Answer
    exten => *280,n,Wait(1)
    exten => *280,n,Set(INDEX=0)
    exten => *280,n,Goto(app-daynight-toggle,s,1)
    exten => *280,hint,Custom:DAYNIGHT0
    exten => s,1,Set(DAYNIGHTMODE=${DB(DAYNIGHT/C${INDEX})})
    exten => s,n,GotoIf($["${DAYNIGHTMODE}" = "NIGHT"]?day:night)
    exten => s,n(day),Set(DB(DAYNIGHT/C${INDEX})=DAY)
    exten => s,n,Set(DEVICE_STATE(Custom:DAYNIGHT${INDEX})=NOT_INUSE)
    exten => s,n,Playback(beep&silence/1&day&reception&digits/${INDEX}&enabled)
    exten => s,n,Hangup
    exten => s,n(night),Set(DB(DAYNIGHT/C${INDEX})=NIGHT)
    exten => s,n,Set(DEVICE_STATE(Custom:DAYNIGHT${INDEX})=INUSE)
    exten => s,n,Playback(beep&silence/1&beep&silence/1&day&reception&digits/${INDEX}&disabled)
    exten => s,n,Hangup
    ; end of [app-daynight-toggle]
     
  6. danardf

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

    Mais là .. tu vas voir des surprises pèpère! :p :woohoo:

    Car le fichier extensions_additional.conf va être écrasé par la prochaine modif de Freepbx!

    Copies le [app-daynight-toggle] dans : extensions_override_freepbx.conf

    Et c'est bien marqué en haut du fichier!

    Code:
    more extensions_additional.conf
    ;--------------------------------------------------------------------------------;
    ; Do NOT edit this file as it is auto-generated by FreePBX. All modifications to ;
    ; this file must be done via the web gui. There are alternative files to make    ;
    ; custom modifications, details at: http://freepbx.org/configuration_files       ;
    ;--------------------------------------------------------------------------------;
    ;
    Ne pas Editer ce fichier !!!!...
     

Share This Page