PureConnect

 View Only

Discussion Thread View
Expand all | Collapse all

New Handler question

  • 1.  New Handler question

    Posted 07-30-2010 13:52
    Hello. I am looking to find a way to close a specific queue and all calls that go to that queue forward them to an outside answering service. I can NOT do this in attendant because the specific profile (our main line) is used by a few queue's depending on the option of the caller (option 1,,2,3) . So if i put an unplanned schedule it will close all my queues in that profile. I want to maybe close only one of those queues in an event of a department meeting. I was thinking that i could add a button on the client that would call a handler to do this but not sure how to build that handler or if there is another easier way to close this specific queue and sand calls outside. thanks


  • 2.  RE: New Handler question

    Posted 07-30-2010 16:30
    How about setting/getting a flag value stored in a simple database table? Before queuing the call to a specific queue, just check for this value and act accordingly. Attendant has already built in support for accessing ODBC DDBBs You can even create a private attendant profile linked to a private extension to set this value through DTMF, for a quick switch, so you could "close" a queue just using any phone connected to IC (or even remotely) If you do this, i recommend you to ask for a password in the profile prior to set the flag value to avoid unexpected issues.


  • 3.  RE: New Handler question

    Posted 08-04-2010 09:59
    Why not use a structured parameter, attached to the call when it is set, so you can test in attendant if it is set and when it is set route the call differently?


  • 4.  RE: New Handler question

    Posted 08-04-2010 10:07
    Originally posted by NiteOwls;18576
    Why not use a structured parameter, attached to the call when it is set, so you can test in attendant if it is set and when it is set route the call differently?
    Sorry, Nite. What do you exactly mean with a structure parameter? Can you further ellaborate on your theory, please?


  • 5.  RE: New Handler question

    Posted 08-04-2010 10:17
    We created an application that uses "structured parameters" based on the status of a structured parameter we attach on each incoming call that status to the call as an attribute. Then in the attendant we check if the attribute is set. When set we route the call differently. Structured parameters are to be used in custom handlers rather then "Server Parameters". You can do the same thing as using a flag in a "simple DB table" or an "IC Table".


  • 6.  RE: New Handler question

    Posted 09-12-2018 11:20
    Hi,

    Here is the complete down and dirty to get it done.

    Parameter:
    Structured Parameter

    Handler that reads structured parameter and places it in an attribute

    Profile with logical transfer
    Subroutine callTransfer based on attribute value
    Other steps are self explanatory.

    ------------------------------
    Jim Barber
    Certified Languages Int'l and Translation
    ------------------------------



  • 7.  RE: New Handler question

    Posted 09-12-2018 12:57
    Wow! This is an old thread and I'm guessing that the OP has either solved their problem by now, or given up.

    However, it is entirely possible that this may show up in a search, so thank you to Jim for his well explained solution.

    Having said that, I believe that there is an easier way to do this, and no handler modification required! ;-)

    So, let us assume we have our Workgroup called "Sales" that we wish to "close" periodically, as requested. (This method can be duplicated for multiple Workgroups, if required.)

    1. Create a second Workgroup. This needs to be ACD, although it will never actually receive any interactions. I my case, I have named this Workgroup "Sales-Closed". This Workgroup should have, as it's members, all the users who you want to have the ability to "close" or "open" the Sales queue.
    2. Configure the Access Control Setting on this Workgroup (Security Tab->Access Control) so that all members of the Workgroup have "Activate Self (and probably "Activate Others") for the Workgroup queue. (Select the Sales Workgroup Queue and click "Advanced Access Details").
    3. In Attendant, create the Workgroup Transfer to the Sales Workgroup and the External Transfer to the external service nodes. Neither should have DTMF digits assigned.
    4. Create a Logical Transfer node, with the appropriate digit assigned that callers will press for (in this case) "Sales".
    5. Set the "True" action to be the External Transfer node and the "False" action to be the Workgroup transfer that you created in step 3.
    6. Click on the "Create Logical Expression" button.
    7. For Data Type, select "Data about a particular ACD or Custom workgroup" and click "next".
    8. Select the "Sales-Closed" workgroup
    9. For "Property to Analyze" choose "Number of Logged In Agents" and click "next"
    10. Configure the comparison to be "greater than" and "0".
    11. Publish
    12. Deactivate all the users in the "Sales-Closed" Workgroup. At this point, when the caller selects the option, the number of logged in agents will be zero, the false exit is taken and the call will go to the Sales Workgroup queue.

    When a meeting is called (or whatever the event is causing you to want to "close" the queue) then any of the authorized users simply activate themselves in the Sales-Closed Workgroup. Now, when a caller selects the option, the number of logged in Agents will be greater than zero, the True path be taken and the external transfer will happen.

    Once the meeting is over, the users all need to be deactivated again to "reopen" the queue.

    Job done, with no handler modifications (which is always the preferred path to take.)

    I hope that makes sense. I can post screenshots if anyone needs additional information.


  • 8.  RE: New Handler question

    Posted 06-29-2020 15:15
    Bumping this old thread again.  I have a similar question but for a different application.  During open hours, could I check a given workgroup if agents logged on and activated are <1 and redirect to closed treatment?  If my queue opens at 8 with only 1 agent scheduled.  If that agent is somehow late for work when the queue opens, I'd like it to continue playing the closed treatment until they log on. How do I get it to check for agents logged on and activated in a workgroup and send the call to the closed treatment if <1?

    ------------------------------
    Thomas Quigley
    Fraser Health Authority - Data Center Site
    ------------------------------



  • 9.  RE: New Handler question

    Posted 06-30-2020 07:58
    This can be accomplished with a simple subroutine. Call the custom subroutine from Attendant and configure the handler to perform the data lookup against user logged in/status/activation/etc. as needed. When you have the number of "valid" agents in the queue, write that value to a custom call attribute. Then (back in Attendant), use that attribute in a Logical Transfer to choose whether to send the call to queue or somewhere else.

    ------------------------------
    David Currier
    cpi.solutions
    ------------------------------



  • 10.  RE: New Handler question

    Posted 06-30-2020 09:17
    For a simple queue check writing  a custom handler seems over kill. I would suggest using Logical Transfer to check the queue in question and if there is no available agents transfer it to the close menu.

    ------------------------------
    Scott Williams
    Missouri Higher Education Loan Authority
    ------------------------------



  • 11.  RE: New Handler question

    Posted 06-30-2020 09:24
    Yes, Attendant could be used to check the number of "Logged In" agents in the workgroup. But it doesn't have the ability to go very far beyond that. It can check the number of "Available" agents (meaning agents that are available at that specific moment to take the call)... but it can't go beyond that to look in detail at activation, skills, categories, etc. It's just looking blindly at the ACD availability workgroup statistic.

    So it depends on exactly what question you're trying to answer. If it can be as simple as the number of agents logged it, then that should do the trick nicely in a Logical Transfer.

    ------------------------------
    David Currier
    cpi.solutions
    ------------------------------



  • 12.  RE: New Handler question

    Posted 06-30-2020 09:48
    Yes the logical transfer is limited to basic queue stats ( # of available agents, # of logged in agents​​, # of calls,​ avg wait time, avg queue length), but would still accomplish checking if there are agents logged into the queue.

    Now the problem that could come up is your agents forgot to log out the night before, so while he is showing logged in he is not available to take a call. So if this is a worry or problem, then you will want to go the custom handler route and check how long agent has been in the status.

    ------------------------------
    Scott Williams
    Missouri Higher Education Loan Authority
    ------------------------------



  • 13.  RE: New Handler question

    Posted 07-02-2020 11:53
    Thanks all. I really appreciate you chiming in.  It sounds like I could use the basic option if I only want it to look for agents logged in. Anything more than that requires a custom handler.  The only risk I see is if someone doesn't log out at the end of the previous day.  They will still show as logged in at 8 am the next day when the queue opens even if they've been in 'Gone Home' for 16 hours. 

    I'll consider the options.

    ------------------------------
    Thomas Quigley
    Fraser Health Authority - Data Center Site
    ------------------------------



Need Help finding something?

Check out the Genesys Knowledge Network - your all-in-one access point for Genesys resources