« Back to CTIOS Toolkit Questions

Obtain AgentID from Call Events (CallBegin, CallDelivered, etc)

Combination View Flat View Tree View
Threads [ Previous | Next ]
CTI OS 8.5.5.3 (according to the .NET libraries)
 
I'm working on a monitor mode app that will be used to handle call events to, hopefully, retrieve the end AgentID and do some further processing.
 
I was hoping to use the AgentPrecall event, but that event doesn't seem to ever get triggered.  I'm now handling the CallBegin, CallDelivered, and CallEstablished events to see if I can derive the end AgentID from the call data that's available.  I'm not seeing a way to derive the AgentID from the call data available in these events.
 
I'm also handling the AgentStateChange event to see if I can correlate back to the call, it if was a call, that triggered the agent state change.  Not seeing a way to do this correlation either.
 
Can anyone propose a way to correlate a call event to the end AgentID where the call is alerting?
 
I'd like to try and do this without db queries... if possible.
 
Thanks in advance,
 
Steve E.
 

CTI OS 8.5.5.3 (according to the .NET libraries)

I'm working on a monitor mode app that will be used to handle call events to, hopefully, retrieve the end AgentID and do some further processing.

I was hoping to use the AgentPrecall event, but that event doesn't seem to ever get triggered. I'm now handling the CallBegin, CallDelivered, and CallEstablished events to see if I can derive the end AgentID from the call data that's available. I'm not seeing a way to derive the AgentID from the call data available in these events.

I'm also handling the AgentStateChange event to see if I can correlate back to the call, it if was a call, that triggered the agent state change. Not seeing a way to do this correlation either.

Can anyone propose a way to correlate a call event to the end AgentID where the call is alerting?

I'd like to try and do this without db queries... if possible.

Thanks in advance,

Steve E.


I did exactly that in a monitor mode app I wrote a while ago. I will try and take a look at the code later today to see the particulars but I think what I did was create an Agent object collection that contained the extension (using the AgentXXX messages) of the agent and then created a Calls collection( using the CallXXX message) and matched the call's endpoints (extension) using to the Agent collectiont to correlate the calls with agents. Like I said I will have to look to verify but think that is what I did. The app works great though so it is possible. Mine is driving a supervisor desktop that has enhanced realtime data. It has agent call states, ANI/DNIS, Stats, with sorting filtering and differnent colors per state. So like I said totally possible.
 
Shannon

Hi Shannon,

I started down that road as well, but was thinking about the effort to clean up those calls in the calls collection. I suppose I could use the CallEnd event to remove the call object from the collection.

What piece of call argument data did you use to match to the agent?

Thanks for the quick response and anything else you can add!

Steve E.

David Lender (467)
Shannon McCoy (91)
Arthur Shats (57)
Christopher Nagel (47)
GEOFFREY THOMPSON (38)