I am developing a C# application for user internally by our IT personal for a Database Lookup. What I am trying to accomplish is to allow my application to recognize the incoming caller ID as displayed by our Jabber Client and use that information to automatically search the application based on the caller name for records.
I have research this topic extensively but being a novice programmer and not involved in the CUCM management has left me with a some frustration.
What I hope to accomplish is learning a way to passively listen for that caller id information. Either by monitoring the Jabber Toast notification messages for the name and id or by using TAPI.
If additional information is needed to help me achive this goal please let me know and I can speak with our telecom engineer.
Below is what I have been told thus far.
We operate a CUCM 9.0 Server
We operate a Cisco Jabber Sever that integrates with AD
The Application will be run on local machines that are all connected via a Cisco 7960 IP Phone using SCCP. The PC's are connect to the phone hub of this device.
My question is as follows:
Is there a way to passively listen for Incoming Caller ID and collect this information for use in my application?
My ideas thus far have been:
1. Use a 3rd party C# Wrapper "Julmar" ATAPI to connect and collect this information - This seems to require active connectivity to the CUCM server with CTI Port and TSP and I am looking to connect passively or retrieve the information passively.
2. Some how capture the packets used to initiate the Jabber Toast Caller ID messages and use the information to search my application (What ports and type of communication is this transmitted with.
Pull the information via XML from the Phone itself. Is it possible to retrieve the Caller information via the Device webservice?
I am open to any suggestions. Keep in mind I am not very familiar with the steps to accomplish these goals above. So a Footnote walk through with examples would be appreciated.
Thanks for your help.
You might want to look at the Routing Rules Interface as another way of doing it. CURRI will deliver a web request to your app with the calling party information in it. You can return a simple response to CUCM and the call will be routed to phone as normal. If your app isn't available, CUCM will route the call as normal.
I'm in the process of trying to achieve similar end goals to you.. Can you tell me if you ended up with a simple/effective solution?