cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
31
Views
0
Helpful
0
Comments
cdnadmin
Level 11
Level 11
This document was generated from CDN thread

Created by: Ammar Ahmed on 29-12-2009 04:56:58 PM
Hi,
 
I need to monitor events related to the calls belonging to the particular skillgroups. Same goes for agentStateChange events. When I subscribe to the events using the following filter
 
MessageID =30, 37, 9, 10, 13, 16, 19, 21, 23, 24, 25;SkillGroupNumber=6001,6002,6003,8500
 
AgentStateChange events are received as expected but the call related events (Begin,Delivered, Established and Terminate) does not contain some of the information for example I extract the Call Object using CallObjectUniqueID, and use that object to retrieve RouterCallDay and RouterCallKey. When I do not use SkillGroupNumber then these values are retrieved as expected.
 
I am using the following code to retreive RouterCallDay
 
m_oCTIOSClient.GetCTISessionObject().GetObjectFromObjectID(strCallUOID, out oCtiOsObject);
                if (oCtiOsObject != null)
                {
                    Call oCallFromSession = (Call)oCtiOsObject;
                    if (oCallFromSession.IsValid(Enum_CtiOs.CTIOS_ROUTERCALLKEYDAY))
                    {
                        int iVal;
                        if (oCallFromSession.GetValueInt(Enum_CtiOs.CTIOS_ROUTERCALLKEYDAY, out iVal))
                        {
                            strUCID = iVal.ToString();
                            strUCID += "_";
                            if (oCallFromSession.IsValid(Enum_CtiOs.CTIOS_ROUTERCALLKEYCALLID))
                            {
                                if (oCallFromSession.GetValueInt(Enum_CtiOs.CTIOS_ROUTERCALLKEYCALLID, out iVal))
                                {
                                    strUCID += iVal.ToString();
                                    bValidUCID = true;
                                }
                            }
                        }
                    }
                }
 
 

Subject: RE: Filtering call events in Monitor Mode using SkillGroupNumber
Replied by: Ammar Ahmed on 01-01-2010 10:45:58 AM
Also CallClear and CallEnd do not contain any SkillGroupNumber so if I apply Skill based filter I stop getting these two events.
 
Is there any possibility where I can specify different filter for different callbacks (Agents, Calls) using the same session in monitor mode?

Subject: RE: New Message from Ammar Ahmed in Computer Telephony Integration Object S
Replied by: David Lender on 04-01-2010 02:30:36 PM
Please open a SR and provide a set of logs showing your filtered events.
You do realize that the ; is an AND so you will get only those events
that contain that skillgroupnumber. Skillgroupnumber is optional so it
is possible the events you are looking for dont have one of the
skillgroupnumbers you listed so you will not receive any of those
events.

I see nothing wrong with your code to retreive the RouterCallDay.  Are
you able to get the CallObjectUniqueID for these filtered events but
then there is nothing in the RouterCallDay?

It could be that you are not receiving the Begin, Delivered,
Established, (there is no Terminate Event, it is either CallCleared or
CallEnd.) because the skillgroupnumber is not in those events.

Subject: RE: New Message from Ammar Ahmed in Computer Telephony Integration Object S
Replied by: David Lender on 04-01-2010 02:32:45 PM
Only 1 filter can be set at a time.   I think to accomplish what you
want you should set filter to receive all events you are interested in
and then apply your own logic to chec for skillgroup in the events that
have them and track then which call objectid events you want.

Subject: RE: New Message from Ammar Ahmed in Computer Telephony Integration Object S
Replied by: Ammar Ahmed on 06-01-2010 09:22:45 AM
Hi David,
 
Originally I was doing as you mentioned, subscribing to all and filtering events based on my own logic. I thought I might have to do deal with lower traffic for events if filter at subscription time could that for me. As you mentioned events which do not contain SkillGroupNumber will be filtered out for example End/Clear. So I am reverting back to the original code.
 
But it could have been really usefull if instead of filtering using ';' which always act as AND we could do 'OR' between different type of filters(not the values which are alwasy ORed) within the same session.

Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community:

Quick Links