Custom Parking lot not showing up

  1. 4 years ago

    I do not use the default parkinglots on my Elastix systems. Instead I have setup this:

    http://pbxinaflash.com/community/index. ... ing.14606/

    Parking works great, but FOP2 does not show them.

  2. admin

    16 Jul 2014 Administrator

    FOP2 will show whatever it has configured. If you use FreePBX autoconfiguration, then it will show what FreePBX has to offer (and that excludes any custom button you might have).

    You can export the automatic button configuration that the autoconfig-buttons-freepbx.sh script outputs to a file and use that instead of automatic configuration. And then append/add your custom park button to the button configuration file.

    If you do not care about filtering groups, you can also add your custom park button in buttons_custom.cfg, but be sure your fop2 users does not have any groups assigned (in the fop2 users admin page).

    A park button config should look similar to this in fop2:

    [PARK/default]
    type=park
    extension=700
    label=Parking
    context=parkedcalls

    Best regards,

  3. I will look at it this evening and report back. thank you.

  4. no luck yet. The built in old FOP shows the call in the parking slot, but FOP2 does not.
    http://i.imgur.com/sSrhnzg.jpg

    http://i.imgur.com/WGgXkpt.jpg

    Parking is not checked in the FreePBX interface.
    http://i.imgur.com/bg2S0kf.jpg

    extensions_custom.conf

    [park-hints2]
    include => park-hints-custom
    ; THIS IS COMMENTED OUT
    ; This is how you would still use the automated parking if you choose
    ; Since we manually park, I have it disabled.
    exten => 700,1,Set(CHANNEL(parkinglot)=parkinglot_lot2)
    exten => 700,n,Set(_PARKINGLOT=parkinglot_lot2)
    exten => 700,n,Park()
    exten => 700,n,Hangup()
    exten => 701,hint,park:701@parkinglot_lot2
    exten => 702,hint,park:702@parkinglot_lot2
    exten => 703,hint,park:703@parkinglot_lot2
    exten => 704,hint,park:704@parkinglot_lot2
    exten => 705,hint,park:705@parkinglot_lot2
    exten => 706,hint,park:706@parkinglot_lot2
    exten => 707,hint,park:707@parkinglot_lot2
    exten => 708,hint,park:708@parkinglot_lot2
    exten => _70[12345678],1,Set(PARKINGEXTEN=${EXTEN})
    ;start state debugging info
    exten => _70[12345678],n,NoOP(Park in parkinglot: ${PARKINGEXTEN})
    exten => _70[12345678],n,NoOP(Checking for parking lot: park:${EXTEN}@parkinglot_lot2)
    exten => _70[12345678],n,NoOP(Parking Lot State: ${DEVICE_STATE(park:${EXTEN}@parkinglot_lot2)})
    ;end state debugging info
    ;IF YOU HAVE TWO DIGIT USER EXTENSIONS, THIS WILL NOT WORK FOR YOU!
    ;IF YOU USE 4 DIGIT EXTENSIONS, SET extLeng=4  !!!!!!!!!
    exten => _70[12345678],n,set(extLeng=3)
    ;If the line is not in use, we park it.  Otherwise, we return the call to whomever transferred it
    exten => _70[12345678],n,GotoIf($[ ${DEVICE_STATE(park:${EXTEN}@parkinglot_lot2)} =NOT_INUSE ] ?PARK)
    ;Start Busy/non-park debugging for non park scenario
    exten => _70[12345678],n,NoOP(Park is INUSE: ${EXTEN})
    exten => _70[12345678],n,NoOP(Failed park: ${EXTEN}@parkinglot_lot2)
    exten => _70[12345678],n,NoOP(Transferer of Park: ${BLINDTRANSFER})
    ;Stop Busy/non-park debugging for non park scenario
    exten => _70[12345678],n,GotoIf($[ "${BLINDTRANSFER:4:${extLeng}}" = "" ] ?PICKUPPARK)
    exten => _70[12345678],n,NoOP(Transferred call, sending back to: ${BLINDTRANSFER:4:${extLeng}} )
    exten => _70[12345678],n,dial(local/${BLINDTRANSFER:4:${extLeng}}@from-internal,,tr)
    exten => _70[12345678],n,Hangup()
    exten => _70[12345678],n(PICKUPPARK),NoOP(This is an inside call, Pick up Park Extension: ${EXTEN})
    exten => _70[12345678],n(PICKUPPARK),ParkedCall(${EXTEN},parkinglot_lot2)
    exten => _70[12345678],n(PICKUPPARK),Hangup()
    ;Park The call
    exten => _70[12345678],n(PARK),Set(CHANNEL(parkinglot)=parkinglot_lot2)
    exten => _70[12345678],n(PARK),Set(_PARKINGLOT=parkinglot_lot2)
    exten => _70[12345678],n(PARK),Park(,,,,s)
    exten => _70[12345678],n(PARK),Hangup()
    ;This is for park retrieval
    exten => _**70[12345678],1,NoOP(PICK UP PARKED CALL!!!!!!!!!: ${EXTEN})
    exten => _**70[12345678],n,ParkedCall(${EXTEN:2},parkinglot_lot2)

    feature_general_customer.conf

    [parkinglot_lot2]
    parkedcalltransfers = caller 
    parkedcallreparking = caller
    parkext=700
    parkpos=701-708
    context=parkinglot_lot2
    parkingtime=120
    pickupexten=*8
    courtesytone=beep
    parkext_exclusive=no

    I created buttons_custom.cfg as I am not using groups. This is only being used by the operator and her backup at the moment. Do I need to include it in the fop2.cfg someplace?
    http://i.imgur.com/v6XHG0E.jpg

    [PARK/default]
    type=park
    extension=700
    label=STL_Parking
    context=parkinglot_lot2
  5. admin

    17 Jul 2014 Administrator

    Hi,

    The first screenshot you show is not from FOP but the Elastix Panel or something like that.

    Regarding your parking lot, your context uses the "parkinglot_lot2" context, as such, the button definition in fop2 should reflect that:

    [PARK/parkinglot_lot2]
    type=park
    context= (not sure here! if parkedcalls or parkinglot_lot2)

    Try it that way and see if you see parked calls.

  6. Hi,

    The first screenshot you show is not from FOP but the Elastix Panel or something like that.

    Regarding your parking lot, your context uses the "parkinglot_lot2" context, as such, the button definition in fop2 should reflect that:

    [PARK/parkinglot_lot2]
    type=park
    context= (not sure here! if parkedcalls or parkinglot_lot2)

    Try it that way and see if you see parked calls.

    That first shot is the default FreePBX FOP that no one uses. Just showed that so you could see that the call WAS there.

    I created the buttons_custom.cfg you mentioned as noted in the end of my post using the correct context (it is parkinglot_lot2).
    That was the only thing in buttons_custom.cfg. If I need to do it some other way, let me know.

  7. admin

    17 Jul 2014 Administrator

    How does your buttons_custom.cfg looks like now? if you have [PARK/parkinglot_lot2] it should work.

  8. Nothing in it except this. The files are in /etc/asterisk/fop2. This was a default install from the Elasitx 2.4 add on screen.

    http://i.imgur.com/TxZGWds.png

  9. admin

    17 Jul 2014 Administrator

    Move buttons_custom.cfg to /usr/local/fop2 , or modify autoconfig-buttons-freepbx.sh (torwards the end of the file), and modify the path to /etc/asterisk/fop2 .

  10. Nailed it! I had to hide the defualt one because it showed me 2 buttons, but that was simple enough.

    http://i.imgur.com/2Og6tnw.png

  11. Edited 4 years ago by admin

    This is working great for my on site PBX.

    For my hosted PBX, i have 3 branch office reporting to it and 3 separate parking lots set up.

    -image-

    The buttons work great, but as expected based on a previous comment you made, if I create a user with any group restrictions they will not see the custom button.

    Is there a way we can add this custom button to something so it will show up when groups are used?

    I don't care if all 3 parking lots are visible to all users, but I want to narrow down the extensions so the people in city a are not seeing the people in city b

  12. admin

    6 Aug 2014 Administrator

    Groups are defined in autoconfig-users.sh script, the output from that script is used as valid fop2 configuration. For showing the groups it will query mysql for the table data. You can modify that script to modify its output in several different ways (you can create a new mysql table and join it together on the mysql query for groups, you can just ditch the mysql query and just echo hardcoded lines to stdout, etc). It is a simple shell script, you can do whatever you want with it as long as it outpus valid fop2 configuration lines.

  13. Have not had time to work on this yet, but I intend to. thank you for the response.

or Sign Up to reply!