« Back to Cisco JTAPI Questions

How do you get original calling number from getCallingAddress?

Combination View Flat View Tree View
Threads [ Previous | Next ]
toggle
I have an application  that needs to get the number calling into an 800 number in a call center.  The call is redirected through a route point to a call center representative.  I have set up my java as follows:
 

 
public class JTEventObserver implements CallControlCallObserver, CiscoTerminalObserver, CiscoAddressObserver, Runnable
 

 
I have tried to set up an observer on all addresses and terminals for both the call center agent extension as well as the CiscoRouteTerminal.  The call comes into the 800 number and goes through the route point to the agent extension.  I am logging all of the CallEvents in the callChangeEvent method to see what the values are for getCurrentCallingAddress, getCalledAddress, getModifiedCallingAddress, and getCallingAddress.  As the call events occur and are routed the CiscoCall.getCallID value changes between CallobservationEndedEv and CallActiveEv.  The value for my getCalledAddress is the 800 number and getCallingAddress show the number I am calling from, in the CallobservationEndedEv.  The next event in the log CallActiveEv shows getCalledAddress as a routing extenstion and getCallingAddress as the agent extension.  At this point the original calling number is not longer in the addresses.
 

 
Why is this not carried along?  How can I make and association in my observer to identify what the original calling number is if the getCallID is changing.  There doesn't seem to be any id that allows me to identify a call from the 800 number through the route terminal to the endpoint terminal.  The Developer guide talks about this in the caveats and states that you must monitor the transferController(aka CiscoRouteTerminal) as well as the phone terminal.  I'm doing this but still don't see how you can tell what calls on the routeterminal link to the call on the phone.

 

 
Does anyone know what i'm doing wrong here?

Do you know how the calls are being routed to the representatives?
Is it through your inhouse application or some other contact centre solution(UCCE/UCCX ?)
If it is your own application, you could specify calling address as part of selectRoute request while routing it to representative