Author Message
VadimBruk
Joined: Mar 11, 2005
Messages: 0
Offline
Hi,
Accorging to Avaya JTAPI doc single-step transfer is supported through void transfer(String dest) method in CallControlCall class. When I use this method the JTAPI implementation throws an exception MethodNotSupportedException. 
Can anybody please confirm if this method is supported?

Thanks,
Vadim.
MuraliTupuri
Joined: Apr 11, 2006
Messages: 0
Offline
See the JTAPI ConferenceTransfer sample code on this site. 
We used that method in that sample code without any issue. Please try to run and see if you still run into issues.
see the following code in that sample code.

Call transferController;
      Call otherCall;
      otherCall = calls[ heldIndex ];
      transferController = calls[ (heldIndex+1)%2 ];
      if ( transferController instanceof CallControlCall )
      {
         try
         {
            ((CallControlCall) transferController).transfer( otherCall );
         } catch (Exception ex) {

      
MuraliTupuri
Joined: Apr 11, 2006
Messages: 0
Offline
in addition to my previous posting

You are right.   Avaya not implemented transfer(String) method in CallControlCall instead of that you can use 
 CallControlCall    transfer(Call otherCall)
          This method moves all participants from one Call to another, with the exception of a selected common participant.

Sample code implemted this method
VadimBruk
Joined: Mar 11, 2005
Messages: 0
Offline
Hi Murali,
Thanks for the response.
Does this mean that single-step ( or mute) transfer - when a consult call is not created - is not supported, and I''ll have to emulate by making a consult call and once transfer controller placed a consult call, it will complete the transfer without waiting for the transferee to answer?

Thanks,
Vadim.
MuraliTupuri
Joined: Apr 11, 2006
Messages: 0
Offline
Yes. You move exisiting call connection to hold and make a consult call and then do transfer on the new call and pass the  call  object of the first call.

In the following example 2101 is doing the transfer. 
2103 calls 2101 2101 transfers call to 2102.

The sequence is like this
2103 calls 2101.  2101  Answers.  Assume call id is 100
At this stage local connection state for 2103 and 2101 will be in "talking: state.

Move 2101 connection state to Hold.  Remember Callobject of  100 .

make a consult call  from 2101 to 2102. Assume call id is 101. Here 2102 may not have answered. Could be in ringing stateor talking state. We dont care as long as there is new Call.

Then you can do transfer  here. Use CallControlCall object transfer function  of  101 and pass Call object of 100  as a argument.

2101 should disappear from the connection list of 101 and call id 100 will comepletes its life cycle. Remeber the the transfered call id is 101 NOT 100.

I hope this helps.

Murali
Go to:   
Mobile view