With implementing Longest Waiting into Open Queue I made sure that it would be possible to use it also outside of Open Queue, in fact Open Queue must not even be installed.
When connecting a call to a group, there are a set of different hunt groups selectable:
- parallel
- sequential
- rotary
- random
A Longest Waiting hunt group selection is missing and therefore there was a need to develop it as a new, stand-alone GSE action. I did this already some years ago for a customer project. With Open Queue it was quite natural to put it into, as in Call Center scenarios it is an often needed feature and SwyxWare currently lacks it.
If you want to use Longest Waiting without Open Queue you need to follow the setup instructions in chapter 3.5 of the Open Queue manual. Additionally you have to make sure that the both files
- actionLongestWaiting.ase
- actionLongestWaiting.vbs
are installed as well (see chapter 3.1).
Afterwards you can use the Longest Waiting action directly within a call routing script, as a replacement for the Connect To block. The Longest Waiting action has a similar parameter and return value set so it's in fact nothing more than replacing a Connect To block by the Run GSE Action block to call the Longest Waiting action.
I have prepared a small sample gse script demoing this usage. You can download the script from the project's downloag page (make sure to select the Examples instead of the Releases category).
The following is how the very simple usage looks like:

These are the parameters of the action:

- ProviderParam
Connect string to the database holding the IpPBXCDR and LongestWaiting table - Destination
Number of the SwyxWare usergroup containing all agents who are to handle incoming calls. - ConnectTimeout
Timeout in seconds to connect a call to a certain agent (like in Connect To) - Connect A l e r t Sound
Caller will listen to this while call is connected to an agent. Leave it blank (i.e. = "") to use the system a l e r t sound. - IgnoreBusyInternal
0 - If an agent is either internaly or externaly busy he won't get calls deliverted.
1 - If an agent is internaly busy he will get calls delivert, if he is externaly busy he won't.