" /> need to confirm number of calls in a queue - Genesys CTI User Forum

Author Topic: need to confirm number of calls in a queue  (Read 10079 times)

mmiriad

  • Guest
need to confirm number of calls in a queue
« on: July 20, 2006, 01:35:58 AM »
Advertisement
Dear Genesys CTI Team:

I am a supervisor for a callcentre handling insurance-related activities and I was using Genesys reporting tools such as call centre pulse, cc analyzer and call concentrator for most of my career. I took a handful of Genesys training classes focused on reporting as well as basic routing. This training allows me to use all this wonderful tools but from time to time I find discrepancies between say cc analyzer and call centre pulse and call concentrator records.
This is really worrisome because our company charges its clients based on the volume of calls. We use the total daily count per queue to do this: company A is queue A, company B is queue B and so on.

When there is a discrepancy between say call concentrator and cc analyzer data what can I do to confirm which data is right and which isn't? I do not know which one to choose over the other because both call concentrator and ods statserver get events from t-server; I need some sort of measurestick to rely on in cases such as this. Without this, we are forced to choose the lower number which sometimes is one-third of the other one.

Relying on pbx reporting is not an option because we use "virtual queues" and not cct point.

M.M.

Vic

  • Guest
Re: need to confirm number of calls in a queue
« Reply #1 on: July 20, 2006, 02:20:05 AM »
  • Best Answer
  • [quote author=mmiriad link=topic=1756.msg5530#msg5530 date=1153359358]
    Dear Genesys CTI Team:

    I am a supervisor for a callcentre handling insurance-related activities and I was using Genesys reporting tools such as call centre pulse, cc analyzer and call concentrator for most of my career. I took a handful of Genesys training classes focused on reporting as well as basic routing. This training allows me to use all this wonderful tools but from time to time I find discrepancies between say cc analyzer and call centre pulse and call concentrator records.
    This is really worrisome because our company charges its clients based on the volume of calls. We use the total daily count per queue to do this: company A is queue A, company B is queue B and so on.

    When there is a discrepancy between say call concentrator and cc analyzer data what can I do to confirm which data is right and which isn't? I do not know which one to choose over the other because both call concentrator and ods statserver get events from t-server; I need some sort of measurestick to rely on in cases such as this. Without this, we are forced to choose the lower number which sometimes is one-third of the other one.

    Relying on pbx reporting is not an option because we use "virtual queues" and not cct point.

    M.M.

    [/quote]

    M&M  ::)

    you are in luck! There are several places you can use to double-check your data. The best place to start is with checking your stat server. Many people do not know this, but statserver saves a lot of data into database. Chances are if your Genesys was set up by someone who knew what they were doing your statserver is writing queue data into qinfo table. To check if this is the case, check under connections in your statserver application setup and if you see a data access point use that information to connect to the db. What you are looking for is a table called qinfo. In that table, you have a line-by-line entry of all calls entering any queue, regardless of them being virtual or not. The trick is to figure out which queue is yours because all queues are referenced not by their names but by their id number as assigned by config server. I know it sounds very complicated but do not despair just follow my instructions and you will be getting the numbers in no time:

    Here are the steps that you need to follow:

    1. get queue id
    2. waterdown qinfo data (optional but highly recommended)
    3. modify select-statement
    4. get your data

    [b]Step 1: get queue id[/b]

    all genesys objects have id assigned to them. This id is stored in cfg_dn table. The table itself is in the database used by config server. Once you connect to cme DB, issue a statement like this:

    [b]SELECT dbid, name from cfg_dn where name like '%[glow=red,2,300]name of your queue or part of it thereof[/glow]%'[/b]

    the results will be queuename and dbid. You want to write down the dbid for your queue on a paper for later use.

    [b]Step 2: watering down qinfo[/b]

    Qinfo is a very big table and searching it takes a very long time, especially considering that genesys scripts by default do not add any indexes to it to make our life any easier.

    I use Oracle; however, you can do something similar to it with SQL Server.

    SQLPLUS has a nifty function to create tables from select-statement and I always use it to create a temporary table to base my searches on. This is done like this:

    [after connecting into DB you want this table to be in]

    COPY FROM username/password@ALIAS_FOR_STATSERVER_TABLE CREATE my_table USING SELECT * from QINFO where queuedbid = [glow=red,2,300]put_your_dbid_here[/glow];


    This will copy all your queue-related data into table [b]my_table[/b]

    [b]3. Modify Select-Statement[/b]

    I wrote a really bad SQL-statement that rips one day worth of data from qinfo. You can use that, but there are several places you need to modify before you use it.

    Here is SQL-Statement:

    select distinct (to_char(connid)),status, duration, to_char((to_date('09 01011970','hh24 ddmmyyyy') + 1/24/60/60 * STartTIME),'dd-mm-yyyy hh24:mm:ss') enter_time ,starttime from my_table where to_date('[glow=red,2,300]09 08072006[/glow]','hh24 ddmmyyyy') - to_timestamp(to_date('09 01011970','hh24 ddmmyyyy') + 1/24/60/60 * STartTIME) between interval '0' day and interval '1' day and status = 3;

    Did you notice [glow=red,2,300]09 08072006[/glow] ? Well, this is the what you need to change. the first 09 is your timezone. for me, 09 is JST. UK is 00, Turkey is 02 and so on.

    08072006 means July-08-2006. So, just modify it to match the date you need the data for.

    Once you have modified this data, just run the SQL-statement and you will get ALL the calls that ENTERED your queue on that day.

    I know it sounds hard, but just start doing it and you will be able to get the result in no time. If you have a problem or a question, please do not hesitate to ask.

    Good luck!
    Vic

    Offline Genecist

    • Newbie
    • *
    • Posts: 27
    • Karma: 0
      • Screen Pop Software
    Re: need to confirm number of calls in a queue
    « Reply #2 on: August 04, 2006, 01:30:25 PM »
  • Best Answer
  • You can verify the # of calls in a queue in 'real-time' by using t-lib directly against your TServer.

    A simple client application that call on TQueryAddress against a registered queue DN will return all sorts of information such as the number of agents in the queue, number of *available* agents in a queue, and also the number of calls in a queue at any given point in time.

    Calling TQueryAddress will raise an EventAddressInfo event which will contain all the information described above.

    You could take a sample and then compare it to your reports.

    Of course, this requires proficiency in the t-lib sdk.



    Offline victor

    • Administrator
    • Hero Member
    • *****
    • Posts: 1419
    • Karma: 18
    Re: need to confirm number of calls in a queue
    « Reply #3 on: August 07, 2006, 01:57:03 AM »
  • Best Answer
  • Dear Genecist!

    You are right! I looked into the docs and it said that the structure is:

    typedef enum {
    AddressInfoAddressStatus,
    AdderssInfoMsgWaitingStatus,
    AddressInfoAssociationStatus,
    AddressInfoCallForwardingStatus,
    AddressInfoAgentStatus,
    AddressInfoNumberOfAgentsInQueue,
    AddressInfoNumberOfAvailableAgentsInQueue,
    AddressInfoNumberOfCallsInQueue,
    AddressInfoAddressType,
    AddressInfoCallsQuery,
    AddressInfoSendAllCallsStatus,
    AddressInfoQueueLoginAudit,
    AddressInfoNumberOfIdleClassifiers,
    AddressInfoNumberOfClassifiersInUse,
    AddressInfoNumberOfIdleTrunks,
    AddressInfoNumberOfTrunksInUse,
    AddressInfoDatabaseValue,
    AddressInfoDNStatus
    AddressInfoQueueStatus
    } TAddressInfoType;

    It looks like it has everything you need in here...Except for one thing: I was under impression that it does not support virtual queues.
    Doet it work with VQ too?

    Offline Genecist

    • Newbie
    • *
    • Posts: 27
    • Karma: 0
      • Screen Pop Software
    Re: need to confirm number of calls in a queue
    « Reply #4 on: August 08, 2006, 05:04:52 PM »
  • Best Answer
  • [quote author=victor link=topic=1756.msg5643#msg5643 date=1154915823]
    It looks like it has everything you need in here...Except for one thing: I was under impression that it does not support virtual queues.
    Doet it work with VQ too?
    [/quote]

    Only way to know for sure is to try it out.


    Offline cavagnaro

    • Administrator
    • Hero Member
    • *****
    • Posts: 7641
    • Karma: 56330
    Re: need to confirm number of calls in a queue
    « Reply #5 on: March 06, 2009, 01:02:55 AM »
  • Best Answer
  • Hi guys,
    Wonder if anybody was able to capture the data mentioned here.
    When I do launch the TQueryAddress in effect a event TEventAddressInfo raises twice.
    One with data in the Extensions list with KVP like agentsinqueue, AvailableAgents and CallinQUeue, however this values are always in zero.
    Then the second inmediate event has a list Misc with a KVP FldInfoStatus = Number of calls in queue

    How to capture the data from this Misc list? Any idea?

    Thanks

    Offline cavagnaro

    • Administrator
    • Hero Member
    • *****
    • Posts: 7641
    • Karma: 56330
    Re: need to confirm number of calls in a queue
    « Reply #6 on: March 06, 2009, 01:22:16 AM »
  • Best Answer
  • Err..my mistake.
    Only 1 event raises. The one that seems to work is TExtension.TQueryAddress (AddressInfoCallsQuery) and this returns Misc>FldInfoType=AddressInfoCallsQuery and FldInfoStatus=#of calls in queue.
    But to capture this info?

    If do a AddressInfoNumberOfCallsInQueue then I get
    [code]
    AttributeExtensions [69] 00 03 01 00..
    'AgentsInQueue' 0
    'AvailableAgents' 0
    'CallsInQueue' 0
    AttributeAddressInfoStatus 0
    AttributeAddressInfoType 7 (AddressInfoNumberOfCallsInQueue)
    [/code]
    « Last Edit: March 06, 2009, 01:39:02 AM by cavagnaro »

    Offline victor

    • Administrator
    • Hero Member
    • *****
    • Posts: 1419
    • Karma: 18
    Re: need to confirm number of calls in a queue
    « Reply #7 on: March 12, 2009, 07:57:44 AM »
  • Best Answer
  • Cav,

    I did not expect someone to dig up my 2006 post. THE INTERNETS never forget, so I will be very careful on this one. I assume you are using Omni?

    Offline cavagnaro

    • Administrator
    • Hero Member
    • *****
    • Posts: 7641
    • Karma: 56330
    Re: need to confirm number of calls in a queue
    « Reply #8 on: March 12, 2009, 04:19:16 PM »
  • Best Answer
  • Yup, I have checked actual documentation and your comments are still valid :) However for some reason it is not working in my lab...