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

Created by: Alexey Baysha on 10-03-2010 11:30:53 AM
We have the following
system:    
-A CUCM 6.1(2) cluster, 4 servers.       
-A UCCX 5.0(2)SR01_Build053 HA cluster, 2 servers.
 
We need to develop a
JTAPI application that could get the real original calling number while a call
is ringing in an agent¿s phone (before the call is answered). Is it possible?
How can we get that information? Up to now, we are only able to get the number of
the CTI port that is transferring the call to the agent¿s
phone.
 
This code does not return my real number:
public void callChangedEvent(CallEv[] evlist) {
            TerminalConnection termconn;
//        String name;
            for (int i = 0; i < evlist.length; i++) {

                if (evlist instanceof TermConnEv) {
                    termconn = null;
                    try {
                        TermConnEv tcev = (TermConnEv) evlist;
                        termconn = tcev.getTerminalConnection();
                    } catch (Exception e) {
                        log.error("Excepción en callChangedEvent .", e);
                    }
                    if (evlist.getID() == TermConnRingingEv.ID) {
                        String strCallingNumber = ((CallControlCall) evlist.getCall()).getCallingAddress().getName();
                        //return not
real number

                        System.out.println("-----------getModifiedCallingAddress = " + ((CiscoCall) call).getModifiedCallingAddress());
                       
//return not real number
                        System.out.println("-----------getModifiedCallingAddress = " + ((CiscoCall) call).getLastRedirectedPartyInfo());
                        //return null
                       
                    }
                }
            }
        }


Subject: RE: JTAPI+CTI ¿real original calling number?
Replied by: David Staudt on 10-03-2010 02:36:47 PM
Can you describe the precise call flow, perhaps with example DNs?  Please describe any values observed/expected/desired at each step.

Subject: RE: JTAPI+CTI ¿real original calling number?
Replied by: Alexey Baysha on 11-03-2010 08:59:27 AM
In my case, all begins by an external number (e.g.
944444444) calling to a Control Center number. This (The Control Center)
forwards it to a free agent's terminal (e.g. 3888).
In the final agent's computer I have an Observer class
running. This class has to capture the original calling number (944444444),
but, instead of doing it, it displays an internal Control Center number
(e.g.1222).
What I would need is that the Observer displays the
original Calling Number (944444444) before leaving the phone off the hook.


Subject: RE: JTAPI+CTI ¿real original calling number?
Replied by: Abhishek Malhotra on 11-03-2010 10:14:25 AM
I guess the scenario is:
ExternalCaller calls a CTI Port which initiates a consult call to Agent and you are interested in knowing the DN of the caller on the application which is observing Agent. Please let me know if I understood the scenario clearly.
 
Given, my understanding of the scenario is correct this is what we have:
Call1: External Caller calls CTI Port
Call2: CTI Port calls Agent (Agent is in ringing state)
 
Information of External Caller is associated with Call1 and cannot be seen on Call2. So, if your application is observing only the agent then it impossible to know the ExternalCaller before the transfer is done. Call1 is not in JTAPI's provider's domain till transfer is done.
 
However, if your application is observing CTI Port as well then JTAPI would have Call1 also in its provider's domain and application can query for calling party on call1.
 
HTH.

Subject: RE: JTAPI+CTI ¿real original calling number?
Replied by: David Staudt on 11-03-2010 03:27:30 PM
One additional option if you control the CTI port which is doing the transferring: you can modify the calling ID of the consult call by sending it to a CTI route point first, and then immediately sending it to the agent via the route point selectRoute() mechanism.  selectRoute() has an option where you can modify the calling ID on route.
 
Also to consider, if the CTI port does a redirect() to the agent instead of a consult transfer, then there are options in redirect() that would allow the call to retain the original calling ID.
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