com.cisco.jtapi.extensions
Interface CiscoCall

All Superinterfaces:
javax.telephony.Call, javax.telephony.callcontrol.CallControlCall, CiscoObjectContainer
All Known Subinterfaces:
CiscoConsultCall

public interface CiscoCall
extends javax.telephony.callcontrol.CallControlCall, CiscoObjectContainer

Introduction

The CiscoCall interface extends the CallControlCall interface with additional Cisco Unified Communications Manager specific capabilities.

In Cisco Unified Communications Manager, every Call object comprises a set of call legs that share a common identifier: the global call handle. Connection objects represent call legs in JTAPI, and the Call object that relates a set of Connections contains the global call handle that the underlying call legs share.

The global call handle within a CiscoCall is accessible via its CallManagerID and CallID properties. Taken together, the CallManagerID and CallID form the global call handle that Cisco Unified Communications Manager maintains. Consider this pair of properties as guaranteed to be unique among all ACTIVE Call objects, but when an ACTIVE call becomes INACTIVE, its CallManagerID and CallID may be reused to identify a newly created Call object. Therefore, an INACTIVE Call can have identical CallManagerID and CallID properties to those of a currently ACTIVE Call object.

See Also:
Call

Field Summary
static int CALL_RECORDING_TYPE_APPLICATION_INITIATED_SILENT
          This option indicates that the recording on this call was initiated by an application, with the "silent" invocation type.
static int CALL_RECORDING_TYPE_AUTOMATIC
          This option indicates that the recording on this call was done automatically, as configured in the CUCM.
static int CALL_RECORDING_TYPE_NONE
          This option indicates that there is no recording on this call.
static int CALL_RECORDING_TYPE_USER_INITIATED_FROM_APPLICATION
          This option indicates that the recording on this call was initiated by a user from an application.
static int CALL_RECORDING_TYPE_USER_INITIATED_FROM_DEVICE
          This option indicates that the recording on this call was initiated by a user from a device.
static int CALLSECURITY_AUTHENTICATED
          Call security status is authenticated.
static int CALLSECURITY_ENCRYPTED
          Call security status is encrypted.
static int CALLSECURITY_NOTAUTHENTICATED
          Call security status is not authenticated.
static int CALLSECURITY_UNKNOWN
          Call security status is unknown.
static int CFWD_ALL_CLEAR
          Call is created due to CFwdAll soft key press to clear CFA
static int CFWD_ALL_NONE
          Call is not created due to CFwdAll soft key press
static int CFWD_ALL_SET
          Call is created due to CFwdAll soft key pres to set CFA
static int FEATUREPRIORITY_EMERGENCY
          Feature priority is emergency
static int FEATUREPRIORITY_NORMAL
          Feature priority is normal
static int FEATUREPRIORITY_URGENT
          Feature priority is urgent
static int PLAYTONE_BOTHLOCALANDREMOTE
          A tone plays to both the caller and the monitor target (agent) when this option gets used.
static int PLAYTONE_LOCALONLY
          A tone plays only to the monitor target (agent) when this option gets used.
static int PLAYTONE_NOLOCAL_OR_REMOTE
          When this option is used no tone plays to the monitor target (agent) or the caller.
static int PLAYTONE_REMOTEONLY
          A tone plays only to the caller when this option gets used.
static int SILENT_MONITOR
          This option indicates that silent monitor is requested.
static int WHISPER_MONITOR
          This option indicates that whisper monitor is requested.
 
Fields inherited from interface javax.telephony.Call
ACTIVE, IDLE, INVALID
 
Method Summary
 void conference(javax.telephony.Call[] otherCalls)
          This interface conferences multiple Calls together, resulting in the union of the participants of all the Calls being placed on a single Call.
 javax.telephony.Connection[] connect(javax.telephony.Terminal origterm, javax.telephony.Address origaddr, java.lang.String dialedDigits, int featurePriority)
          This method overloads Call.connect() method.It takes a new parameter featurePriority.
 boolean getCalledAddressPI()
          Returns the Presentation Indicator(PI) that is associated with getCalledAddressPI.
 CiscoPartyInfo getCalledPartyInfo()
          Returns the PartyInfo of the called party of the call.
 CiscoCallID getCallID()
          CallID is a unique identifier among all ACTIVE calls with the same CallManagerID.
 boolean getCallingAddressPI()
          Returns the Presentation Indicator(PI) that is associated with getCallingAddressPI.
 int getCallSecurityStatus()
          This interface returns the SecurityStatus of the Call.
 int getCFwdAllKeyPressIndicator()
          Returns the CFwdAll key press indicator to distinguish if the call is created due to CallFwdAll key press or not.
 CiscoConferenceChain getConferenceChain()
          This interface returns a CiscoConferenceChain object if this Call is a chained conference Call.
 javax.telephony.Address getCurrentCalledAddress()
          Returns the current called Address for the call.
 boolean getCurrentCalledAddressPI()
          Returns the Presentation Indicator(PI) that is associated with CurrentCalledAddress.
 boolean getCurrentCalledDisplayNamePI()
          Returns the Presentation Indicator(PI) that is associated with getCurredCalledDisplayNamePI.
 java.lang.String getCurrentCalledPartyDisplayName()
          This interface returns the display name of the called party in the call.
 CiscoPartyInfo getCurrentCalledPartyInfo()
          Returns the PartyInfo of the current called party of the call.
 java.lang.String getCurrentCalledPartyUnicodeDisplayName()
          Returns the Unicode display name of the called party in the call.
 int getCurrentCalledPartyUnicodeDisplayNamelocale()
          Returns the locale of the current called party Unicode display name.
 javax.telephony.Terminal getCurrentCalledTerminal()
          Returns the Terminal object representing the device of the current called party.
 javax.telephony.Address getCurrentCallingAddress()
          Returns the current calling Address for the call.
 boolean getCurrentCallingAddressPI()
          Returns the Presentation Indicator(PI) that is associated with getCurrentCallingAddressPI.
 boolean getCurrentCallingDisplayNamePI()
          Returns the Presentation Indicator(PI) that is associated with getCurrentCalledDisplayNamePI.
 java.lang.String getCurrentCallingPartyDisplayName()
          This interface returns the display name of the calling party.
 CiscoPartyInfo getCurrentCallingPartyInfo()
          Returns the PartyInfo of the current calling party of the call.
 java.lang.String getCurrentCallingPartyUnicodeDisplayName()
          Returns the Unicode display name of the calling party in the call.
 int getCurrentCallingPartyUnicodeDisplayNamelocale()
          Returns the locale of the current called party Unicode display name.
 javax.telephony.Terminal getCurrentCallingTerminal()
          Returns the Terminal object representing the device of the current calling party.
 java.lang.String getGlobalizedCallingParty()
          This will return the globalizedCallingParty
 CiscoPartyInfo getLastRedirectedPartyInfo()
          Returns the PartyInfo of the last redirecting party of the call.
 boolean getLastRedirectingAddressPI()
          Returns the Presentation Indicator(PI) that is associated with getLastRedirectingAddressPI.
 CiscoPartyInfo getLastRedirectingPartyInfo()
          Deprecated. - use getLastRedirectedPartyInfo();
 javax.telephony.Address getModifiedCalledAddress()
          This interface returns the modified called Address for the call if called party is modified by using called party transformation pattern or other means.
 javax.telephony.Address getModifiedCallingAddress()
          This interface returns the modified calling Address for the call if an application modifies its calling party by using the selectRoute API or other means.
 boolean isConference()
          Checks if this call is a conference call or not.
 javax.telephony.Connection[] startMonitor(javax.telephony.Terminal monitorInitiatorTerminal, javax.telephony.Address monitorInitiatorAddress, int monitorTargetCallId, java.lang.String monitorTargetDN, java.lang.String monitorTargetTerminalName, int monitorType, int playToneDirection)
          If the application has the information about the call at the monitor target, the application can use this interface to monitor calls.
 javax.telephony.Connection[] startMonitor(javax.telephony.Terminal monitorInitiatorTerminal, javax.telephony.Address monitorInitiatorAddress, javax.telephony.TerminalConnection termConnofMonitorTarget, int monitorType, int playToneDirection)
          If the application is observing the monitor target (agent) Address, the application can use the Terminal connection of the monitor target (agent) to initiate a monitor request.
 javax.telephony.Connection transfer(java.lang.String address, java.lang.String facCode, java.lang.String cmcCode)
          This method is similar to the CallControlCall.transfer(String address) interface except that it also takes facCode (Forced Authorization Code) and cmcCode (Client Matter Code) if the transfer Address requires these codes to offer the call.
 
Methods inherited from interface javax.telephony.callcontrol.CallControlCall
addParty, conference, consult, consult, drop, getCalledAddress, getCallingAddress, getCallingTerminal, getConferenceController, getConferenceEnable, getLastRedirectedAddress, getTransferController, getTransferEnable, offHook, setConferenceController, setConferenceEnable, setTransferController, setTransferEnable, transfer, transfer
 
Methods inherited from interface javax.telephony.Call
addObserver, connect, getCallCapabilities, getCapabilities, getConnections, getObservers, getProvider, getState, removeObserver
 
Methods inherited from interface com.cisco.jtapi.extensions.CiscoObjectContainer
getObject, setObject
 

Field Detail

FEATUREPRIORITY_NORMAL

static final int FEATUREPRIORITY_NORMAL
Feature priority is normal

See Also:
Constant Field Values

FEATUREPRIORITY_URGENT

static final int FEATUREPRIORITY_URGENT
Feature priority is urgent

See Also:
Constant Field Values

FEATUREPRIORITY_EMERGENCY

static final int FEATUREPRIORITY_EMERGENCY
Feature priority is emergency

See Also:
Constant Field Values

PLAYTONE_NOLOCAL_OR_REMOTE

static final int PLAYTONE_NOLOCAL_OR_REMOTE
When this option is used no tone plays to the monitor target (agent) or the caller.

See Also:
Constant Field Values

PLAYTONE_LOCALONLY

static final int PLAYTONE_LOCALONLY
A tone plays only to the monitor target (agent) when this option gets used.

See Also:
Constant Field Values

PLAYTONE_REMOTEONLY

static final int PLAYTONE_REMOTEONLY
A tone plays only to the caller when this option gets used.

See Also:
Constant Field Values

PLAYTONE_BOTHLOCALANDREMOTE

static final int PLAYTONE_BOTHLOCALANDREMOTE
A tone plays to both the caller and the monitor target (agent) when this option gets used.

See Also:
Constant Field Values

SILENT_MONITOR

static final int SILENT_MONITOR
This option indicates that silent monitor is requested.

See Also:
Constant Field Values

WHISPER_MONITOR

static final int WHISPER_MONITOR
This option indicates that whisper monitor is requested.

Since:
8.5(1)
See Also:
Constant Field Values

CALL_RECORDING_TYPE_NONE

static final int CALL_RECORDING_TYPE_NONE
This option indicates that there is no recording on this call.

Since:
9.0(1)
See Also:
Constant Field Values

CALL_RECORDING_TYPE_AUTOMATIC

static final int CALL_RECORDING_TYPE_AUTOMATIC
This option indicates that the recording on this call was done automatically, as configured in the CUCM.

Since:
9.0(1)
See Also:
Constant Field Values

CALL_RECORDING_TYPE_APPLICATION_INITIATED_SILENT

static final int CALL_RECORDING_TYPE_APPLICATION_INITIATED_SILENT
This option indicates that the recording on this call was initiated by an application, with the "silent" invocation type.

Since:
9.0(1)
See Also:
Constant Field Values

CALL_RECORDING_TYPE_USER_INITIATED_FROM_APPLICATION

static final int CALL_RECORDING_TYPE_USER_INITIATED_FROM_APPLICATION
This option indicates that the recording on this call was initiated by a user from an application. This recording will be visible on the device itself.

Since:
9.0(1)
See Also:
Constant Field Values

CALL_RECORDING_TYPE_USER_INITIATED_FROM_DEVICE

static final int CALL_RECORDING_TYPE_USER_INITIATED_FROM_DEVICE
This option indicates that the recording on this call was initiated by a user from a device. This recording will be visible on the device itself.

Since:
9.0(1)
See Also:
Constant Field Values

CALLSECURITY_UNKNOWN

static final int CALLSECURITY_UNKNOWN
Call security status is unknown.

See Also:
Constant Field Values

CALLSECURITY_NOTAUTHENTICATED

static final int CALLSECURITY_NOTAUTHENTICATED
Call security status is not authenticated.

See Also:
Constant Field Values

CALLSECURITY_AUTHENTICATED

static final int CALLSECURITY_AUTHENTICATED
Call security status is authenticated.

See Also:
Constant Field Values

CALLSECURITY_ENCRYPTED

static final int CALLSECURITY_ENCRYPTED
Call security status is encrypted.

See Also:
Constant Field Values

CFWD_ALL_NONE

static final int CFWD_ALL_NONE
Call is not created due to CFwdAll soft key press

Since:
8.0
See Also:
Constant Field Values

CFWD_ALL_SET

static final int CFWD_ALL_SET
Call is created due to CFwdAll soft key pres to set CFA

Since:
8.0
See Also:
Constant Field Values

CFWD_ALL_CLEAR

static final int CFWD_ALL_CLEAR
Call is created due to CFwdAll soft key press to clear CFA

Since:
8.0
See Also:
Constant Field Values
Method Detail

connect

javax.telephony.Connection[] connect(javax.telephony.Terminal origterm,
                                     javax.telephony.Address origaddr,
                                     java.lang.String dialedDigits,
                                     int featurePriority)
                                     throws javax.telephony.ResourceUnavailableException,
                                            javax.telephony.PrivilegeViolationException,
                                            javax.telephony.InvalidPartyException,
                                            javax.telephony.InvalidArgumentException,
                                            javax.telephony.InvalidStateException,
                                            javax.telephony.MethodNotSupportedException
This method overloads Call.connect() method.It takes a new parameter featurePriority. which is used to set the priority of the call.
The featurePriority parameter may be:
  1. CiscoCall.FEATUREPRIORITY_NORMAL
  2. CiscoCall.FEATUREPRIORITY_URGENT
  3. CiscoCall.FEATUREPRIORITY_EMERGENCY

Parameters:
origterm -
origaddr -
dialedDigits -
featurePriority -
Returns:
Connection[]
Throws:
javax.telephony.ResourceUnavailableException
javax.telephony.PrivilegeViolationException
javax.telephony.InvalidPartyException
javax.telephony.InvalidArgumentException
javax.telephony.InvalidStateException
javax.telephony.MethodNotSupportedException

getCallID

CiscoCallID getCallID()
CallID is a unique identifier among all ACTIVE calls with the same CallManagerID.

Returns:
The CallID property of this Call

getCurrentCalledAddress

javax.telephony.Address getCurrentCalledAddress()
Returns the current called Address for the call. This interface returns the updated called Address every time the call gets redirected or transferred.

NOTE: In the CiscoJtapi implementation, CallControlCall.getCalledAddress()returns the first called party of the call: the original called party.

Usage:
 if (call instanceof CiscoCall) {
     Address currentCalled = ((CiscoCall) call).getCurrentCalledAddress();
 }
 

See Also:
CallControlCall

getCurrentCallingAddress

javax.telephony.Address getCurrentCallingAddress()
Returns the current calling Address for the call. This interface returns the updated calling Address every every time the call gets redirected or transferred.

NOTE: In the CiscoJtapi implementation, CallControlCall.getCallingAddress()returns the first calling party of the call: the original calling party.

Usage:
 if (call instanceof CiscoCall) {
     Address currentCalling = ((CiscoCall) call).getCurrentCallingAddress();
 }
 

See Also:
CallControlCall

getModifiedCallingAddress

javax.telephony.Address getModifiedCallingAddress()
This interface returns the modified calling Address for the call if an application modifies its calling party by using the selectRoute API or other means. However, this information may not be accurate if an application is only controlling the RP that is modifying the calling number. If no modifying of the calling number is performed, this returns the same value as getCurrentCallingAddress() interface.

Usage:

 if (call instanceof CiscoCall) {
     Address modifiedCalling = ((CiscoCall) call).getModifiedCallingAddress();
 }
 

See Also:
CallControlCall

getModifiedCalledAddress

javax.telephony.Address getModifiedCalledAddress()
This interface returns the modified called Address for the call if called party is modified by using called party transformation pattern or other means. If no modification is done to called number, this returns the same value as getCurrentCalledAddress() interface.

Usage:

 if (call instanceof CiscoCall) {
     Address modifiedCalled = ((CiscoCall) call).getModifiedCalledAddress();
 }
 

See Also:
CallControlCall

getCurrentCalledPartyDisplayName

java.lang.String getCurrentCalledPartyDisplayName()
This interface returns the display name of the called party in the call. It returns null if the display name is unknown.


getCurrentCallingPartyDisplayName

java.lang.String getCurrentCallingPartyDisplayName()
This interface returns the display name of the calling party. It returns null if the display name is unknown.


conference

void conference(javax.telephony.Call[] otherCalls)
                throws javax.telephony.InvalidStateException,
                       javax.telephony.InvalidArgumentException,
                       javax.telephony.MethodNotSupportedException,
                       javax.telephony.PrivilegeViolationException,
                       javax.telephony.ResourceUnavailableException
This interface conferences multiple Calls together, resulting in the union of the participants of all the Calls being placed on a single Call. This method takes a list of Calls as its argument, referred to hereafter as the "secondary" Calls.
The Conference Controller
For the conferencing feature to happen, a common participant must belong to all the Calls, as represented TerminalConnection of common participants on controller Terminal. These TerminalConnections are known as the conference controllers. At the most , only one of TerminalConnection on the Calls at controller Terminal would be in CallControlTerminalConnection.TALKING state, and hence, the TerminalConnection on the secondary Call should be in the CallControlTerminalConnection.HELD state. As a result of invokation of this method, all the conference controller TerminalConnection merge into one TerminalConnection.

Applications can set which Terminal would acts as the conference controller when a conference call gets set up by setting up Conference controller TerminalConnection via invoking CallControlCalll.setConferenceController() method. The CalControlCall.getConferenceController() method returns the current conference controller, or null if there is none. If no conference controller is set initially, the implementation chooses a suitable TerminalConnection when the conferencing feature is invoked.

The Telephone Call Argument
All participants from the secondary Calls, passed as the argument to this method, move to the Call on which this method was invoked. That is, new Connections and TerminalConnections for the participant in the secondary Calls are created on this Call. The Connections and TerminalConnections on the secondary Calls get removed from the Call, and the Call moves to the Call.INVALID state.

Other Shared Participants
There may exist other Addresses and Terminals that are part of some calls in addition to the designated conference controller. In these instances, those participants that are shared between both Calls are merged into one. That is, the Connections and TerminalConnections on this Calls stay unchanged. The corresponding Connections and TerminalConnections on the secondary Calls get removed from that Call.

Pre-conditions:

  1. Let tc1 be the conference controller on this Call
  2. Let connection1 = tc1.getConnection()
  3. Let tc2 to tcN be the conference controllers on otherCalls
  4. (this.getProvider()).getState() == Provider.IN_SERVICE
  5. this.getState() == Call.ACTIVE
  6. tc1.getTerminal() == tc2.getTerminal()...=tcN.getTerminal
  7. tc1.getCallControlState() == CallControlTerminalConnection.TALKING/HELD
  8. tc2-tcN.getCallControlState() == CallControlTerminalConnection.HELD/TALKING
  9. this != otherCalls

Post-conditions:

  1. (this.getProvider()).getState() == Provider.IN_SERVICE
  2. this.getState() == Call.ACTIVE
  3. otherCall.getState() == INVALID
  4. Let c[] be the Connections to be merged from otherCall
  5. Let tc[] be the TerminalConnections to be merged from otherCall
  6. Let new(c) be the set of new Connections created on this Call
  7. Let new(tc) be the set of new TerminalConnections created on this Call
  8. new(c) element of this.getConnections()
  9. new(c).getCallState() == c.getCallState()
  10. new(tc) element of (this.getConnections()).getTerminalConnections()
  11. new(tc).getCallState() == tc.getCallState()
  12. c[i].getCallControlState() == CallControlConnection.DISCONNECTED for all i
  13. tc[i].getCallControlState() == CallControlTerminalConnection.DROPPED for all i
  14. CallInvalidEv is delivered for otherCall
  15. CallCtlConnDisconnectedEv/ConnDisconnectedEv is delivered for all c[i]
  16. CallCtlTermConnDroppedEv/TermConnDroppedEv is delivered for all tc[i]
  17. ConnCreatedEv is delivered for all new(c)
  18. TermConnCreatedEv is delivered for all new(tc)
  19. Appropriate events are delivered for all new(c) and new(tc)

Parameters:
otherCalls - The Other Calls which are to be merged with this Call object.
Throws:
javax.telephony.InvalidArgumentException - The Call object that is provided is not valid for the conference.
javax.telephony.InvalidStateException - Thismeans that the Provider is not "in service," the Call is not "active," or the conference controllers are not in the proper state.
javax.telephony.MethodNotSupportedException - The implementation does not support this method.
javax.telephony.PrivilegeViolationException - The application does not have the proper authority to invoke this method.
javax.telephony.ResourceUnavailableException - This means that an internal resource that is necessary for the successful invocation of this method is not available.
See Also:
ConnCreatedEv, TermConnCreatedEv, ConnDisconnectedEv, TermConnDroppedEv, CallInvalidEv, CallCtlConnDisconnectedEv, CallCtlTermConnDroppedEv

transfer

javax.telephony.Connection transfer(java.lang.String address,
                                    java.lang.String facCode,
                                    java.lang.String cmcCode)
                                    throws javax.telephony.InvalidArgumentException,
                                           javax.telephony.InvalidStateException,
                                           javax.telephony.InvalidPartyException,
                                           javax.telephony.MethodNotSupportedException,
                                           javax.telephony.PrivilegeViolationException,
                                           javax.telephony.ResourceUnavailableException
This method is similar to the CallControlCall.transfer(String address) interface except that it also takes facCode (Forced Authorization Code) and cmcCode (Client Matter Code) if the transfer Address requires these codes to offer the call. If only one of the codes is required, the other code may need to be a null value.

If the user enters no codes, or invalid codes, the call may not be offered and platformException may contain the following error codes:

  1. CiscoJTAPIException.CTIERR_FAC_CMC_REASON_FAC_NEEDED
  2. CiscoJTAPIException.CTIERR_FAC_CMC_REASON_CMC_NEEDED
  3. CiscoJTAPIException.CTIERR_FAC_CMC_REASON_FAC_CMC_NEEDED
  4. CiscoJTAPIException.CTIERR_FAC_CMC_REASON_FAC_INVALID
  5. CiscoJTAPIException.CTIERR_FAC_CMC_REASON_CMC_INVALID

This overloaded version of this method transfers all participants currently on this Call, with the exception of the transfer controller participant, to another Address. This is often called a "single-step transfer" because the transfer feature places another call and performs the transfer simultaneously. The Address string argument to this method must be valid and complete.

The Transfer Controller
The transfer controller for this version of this method represents the participant on this Call around which the transfer is taking place and who drops off the Call after the transfer has completed. The transfer controller is a TerminalConnection that must be in the CallControlTerminalConnection.TALKING state.

Applications may control which TerminalConnection acts as the transfer controller via the CallControlCall.setTransferController() method. The CallControlCall.getTransferController() method returns the current transfer controller, or null if there is none. If no transfer controller is set, the implementation chooses a suitable TerminalConnection when the transfer feature gets invoked.

When the transfer feature gets invoked, the transfer controller moves into the CallControlTerminalConnection.DROPPED state. If it is the only TerminalConnection associated with its Connection, then its Connection moves into the CallControlConnection.DISCONNECTED state as well.

The New Connection
This method creates and returns a new Connection representing the party to which the Call was transferred. This Connection may be null if the Call has been transferred outside of the Provider domain and can no longer be tracked. This Connection must at least be in the CallControlConnection.IDLE state. The Connection state may have progressed beyond "idle" before this method returns, and should be reflected by an event. This new Connection will progress as any normal destination Connection on a call. Typical scenarios for this Connection are described by the Call.connect() method.

Pre-conditions:

  1. Let tc be the transfer controller on this Call
  2. (this.getProvider()).getState() == Provider.IN_SERVICE
  3. this.getState() == Call.ACTIVE
  4. tc.getCallControlState() == CallControlTerminalConnection.TALKING
Post-conditions:
  1. Let newconnection be the Connection created and returned
  2. Let connection == tc.getConnection()
  3. (this.getProvider()).getState() == Provider.IN_SERVICE
  4. this.getState() == Call.ACTIVE
  5. tc.getCallControlState() == CallControlTerminalConnection.DROPPED
  6. If connection.getTerminalConnections().length == 1, then connection.getCallControlState() == CallControlConnection.DISCONNECTED
  7. newconnection is an element of this.getConnections(), if not null.
  8. newconnection.getCallControlState() at least CallControlConnection.IDLE, if not null.
  9. ConnCreatedEv is delivered for newconnection
  10. CallCtlTermConnDroppedEv/TermConnDroppedEv is delivered for tc
  11. CallCtlConnDisconnectedEv/ConnDisconnectedEv is delivered for connection if no other TerminalConnections

Parameters:
address - The destination Address string(dialedDigits) to which the Call is being transferred.
facCode - The Force Authorization Code
cmcCode - The Client Matter Code
Returns:
The new Connection associated with the destination, or null.
Throws:
javax.telephony.InvalidArgumentException - The TerminalConnection provided as controlling the transfer is not valid or not part of this Call.
javax.telephony.InvalidStateException - This means that the Provider is not "in service," the Call is not "active," or the transfer controller is not "talking."
javax.telephony.InvalidPartyException - The destination Address is not valid or complete.
javax.telephony.MethodNotSupportedException - The implementation does not support this method.
javax.telephony.PrivilegeViolationException - The application does not have the proper authority to invoke this method.
javax.telephony.ResourceUnavailableException - An internal resource necessary for the successful invocation of this method is unavailable.
See Also:
ConnCreatedEv, ConnDisconnectedEv, TermConnDroppedEv, CallCtlConnDisconnectedEv, CallCtlTermConnDroppedEv

getCurrentCalledAddressPI

boolean getCurrentCalledAddressPI()
Returns the Presentation Indicator(PI) that is associated with CurrentCalledAddress. If it returns true, the application can display this Address name to the end users. If it returns false, the application should not display this Address name to end users.


getCurrentCalledDisplayNamePI

boolean getCurrentCalledDisplayNamePI()
Returns the Presentation Indicator(PI) that is associated with getCurredCalledDisplayNamePI. If it returns true, the application can display this DisplayName to the end users. If it returns false, the application should not display this DisplayName to the end users.


getCurrentCallingAddressPI

boolean getCurrentCallingAddressPI()
Returns the Presentation Indicator(PI) that is associated with getCurrentCallingAddressPI. If it returns true, the application can display this Address name to the end users. If it returns false, the application should not display this Address name to the end users.


getCurrentCallingDisplayNamePI

boolean getCurrentCallingDisplayNamePI()
Returns the Presentation Indicator(PI) that is associated with getCurrentCalledDisplayNamePI. If it returns true, the application can display this DisplayName to the end users. If it returns false, the application should not display this DisplayName to the end users.


getLastRedirectingAddressPI

boolean getLastRedirectingAddressPI()
Returns the Presentation Indicator(PI) that is associated with getLastRedirectingAddressPI. If it returns true, the application can display this Address name to the end users. If it returns false, the application should not display this Address name to the end users.


getCalledAddressPI

boolean getCalledAddressPI()
Returns the Presentation Indicator(PI) that is associated with getCalledAddressPI. If it returns true, the application can display this Address name to the end users If it returns false, the application should not display this Address name to the end users.


getCallingAddressPI

boolean getCallingAddressPI()
Returns the Presentation Indicator(PI) that is associated with getCallingAddressPI. If it returns true, the application can display this Address name to the end users. If it returns false, the application should not display this Address name to the end users.


getCurrentCalledPartyUnicodeDisplayName

java.lang.String getCurrentCalledPartyUnicodeDisplayName()
Returns the Unicode display name of the called party in the call. It returns null if the display name is unknown.


getCurrentCalledPartyUnicodeDisplayNamelocale

int getCurrentCalledPartyUnicodeDisplayNamelocale()
Returns the locale of the current called party Unicode display name. CiscoLocale interface lists the supported locales.


getCurrentCallingPartyUnicodeDisplayName

java.lang.String getCurrentCallingPartyUnicodeDisplayName()
Returns the Unicode display name of the calling party in the call. It returns null if the display name is unknown.


getCurrentCallingPartyUnicodeDisplayNamelocale

int getCurrentCallingPartyUnicodeDisplayNamelocale()
Returns the locale of the current called party Unicode display name.


getCurrentCallingPartyInfo

CiscoPartyInfo getCurrentCallingPartyInfo()
Returns the PartyInfo of the current calling party of the call.


getCurrentCalledPartyInfo

CiscoPartyInfo getCurrentCalledPartyInfo()
Returns the PartyInfo of the current called party of the call.


getLastRedirectingPartyInfo

CiscoPartyInfo getLastRedirectingPartyInfo()
Deprecated. - use getLastRedirectedPartyInfo();

Returns the PartyInfo of the last redirecting party of the call.


getLastRedirectedPartyInfo

CiscoPartyInfo getLastRedirectedPartyInfo()
Returns the PartyInfo of the last redirecting party of the call.


getCalledPartyInfo

CiscoPartyInfo getCalledPartyInfo()
Returns the PartyInfo of the called party of the call.


startMonitor

javax.telephony.Connection[] startMonitor(javax.telephony.Terminal monitorInitiatorTerminal,
                                          javax.telephony.Address monitorInitiatorAddress,
                                          javax.telephony.TerminalConnection termConnofMonitorTarget,
                                          int monitorType,
                                          int playToneDirection)
                                          throws javax.telephony.ResourceUnavailableException,
                                                 javax.telephony.PrivilegeViolationException,
                                                 javax.telephony.InvalidPartyException,
                                                 javax.telephony.InvalidArgumentException,
                                                 javax.telephony.InvalidStateException,
                                                 javax.telephony.MethodNotSupportedException
If the application is observing the monitor target (agent) Address, the application can use the Terminal connection of the monitor target (agent) to initiate a monitor request. This interface places a call from an originating endpoint to monitor the call at the monitor target.

Pre-Conditions:

 (this.getProvider()).getState() == Provider.IN_SERVICE
 this.getState() == Call.IDLE
 ((CiscoProviderCapabilities)(this.getTerminal().getProvider().getProviderCapabilities()).canMonitor() == TRUE
 TerminalConnection.getProvider() == this.getProvider()
 

Parameters:
monitorInitiatorTerminal - - The originating Terminal
monitorInitiatorAddress - - The originating Address
termConnofMonitorTarget - - The TerminalConnection of the target
monitorType - - The type of monitor. Use CiscoCall.SILENT_MONITOR or CiscoCall.WHISPER_MONITOR.
playToneDirection - - Indicates whether the tone needs to be played to the target, the initiator, or both. This should be one of CiscoCall.PLAYTONE_NOLOCAL_OR_REMOTE, CiscoCall.PLAYTONE_LOCALONLY, CiscoCall.PLAYTONE_REMOTEONLY, or CiscoCall.PLAYTONE_BOTHLOCALANDREMOTE
Throws:
javax.telephony.ResourceUnavailableException
javax.telephony.PrivilegeViolationException
javax.telephony.InvalidPartyException
javax.telephony.InvalidArgumentException
javax.telephony.InvalidStateException
javax.telephony.MethodNotSupportedException

startMonitor

javax.telephony.Connection[] startMonitor(javax.telephony.Terminal monitorInitiatorTerminal,
                                          javax.telephony.Address monitorInitiatorAddress,
                                          int monitorTargetCallId,
                                          java.lang.String monitorTargetDN,
                                          java.lang.String monitorTargetTerminalName,
                                          int monitorType,
                                          int playToneDirection)
                                          throws javax.telephony.ResourceUnavailableException,
                                                 javax.telephony.PrivilegeViolationException,
                                                 javax.telephony.InvalidPartyException,
                                                 javax.telephony.InvalidArgumentException,
                                                 javax.telephony.InvalidStateException,
                                                 javax.telephony.MethodNotSupportedException
If the application has the information about the call at the monitor target, the application can use this interface to monitor calls. This interface places a call from an originating endpoint to monitor the call at the monitor target.

Pre-Conditions:

 (this.getProvider()).getState() == Provider.IN_SERVICE
 this.getState() == Call.IDLE
 ((CiscoProviderCapabilities)(this.getTerminal().getProvider().getProviderCapabilities()).canMonitor() == TRUE
 

Parameters:
monitorInitiatorTerminal - - The originating Terminal
monitorInitiatorAddress - - The originating Address
monitorTargetCallId - - The callLegID of the call at the target. Assuming one call at monitor target Address (targetAddress), callLegID = targetAddress.getConnection().getConnectionID().intValue();
monitorTargetDN - - The DN of the monitor target
monitorTargetTerminalName - - The Terminal name of the monitor target
monitorType - - The type of monitor. Use CiscoCall.SILENT_MONITOR or CiscoCall.WHISPER_MONITOR.
playToneDirection - - Indicates whether the tone needs to be played to the target, to the caller, or both
Throws:
javax.telephony.ResourceUnavailableException
javax.telephony.PrivilegeViolationException
javax.telephony.InvalidPartyException
javax.telephony.InvalidArgumentException
javax.telephony.InvalidStateException
javax.telephony.MethodNotSupportedException

getConferenceChain

CiscoConferenceChain getConferenceChain()
This interface returns a CiscoConferenceChain object if this Call is a chained conference Call. Otherwise this interface returns null.

Returns:
CiscoConferenceChain or null

getCallSecurityStatus

int getCallSecurityStatus()
This interface returns the SecurityStatus of the Call. Applications can use this interface to query the SecurityStatus of the Call. The interface can return one of the following constants:
  • CiscoCall.CALLSECURITY_UNKNOWN
  • CiscoCall.CALLSECURITY_NOTAUTHENTICATED
  • CiscoCall.CALLSECURITY_AUTHENTICATED
  • CiscoCall.CALLSECURITY_ENCRYPTED
  • Returns:
    int

    getGlobalizedCallingParty

    java.lang.String getGlobalizedCallingParty()
    This will return the globalizedCallingParty

    Returns:
    String

    isConference

    boolean isConference()
    Checks if this call is a conference call or not.

    Returns:
    True if this is a conference call, False if not.

    getCurrentCallingTerminal

    javax.telephony.Terminal getCurrentCallingTerminal()
    Returns the Terminal object representing the device of the current calling party.

    Returns:
    Terminal
    Since:
    8.0

    getCurrentCalledTerminal

    javax.telephony.Terminal getCurrentCalledTerminal()
    Returns the Terminal object representing the device of the current called party. This WILL NOT BE SET until the called party ANSWERS the call.

    Returns:
    Terminal
    Since:
    8.0

    getCFwdAllKeyPressIndicator

    int getCFwdAllKeyPressIndicator()
    Returns the CFwdAll key press indicator to distinguish if the call is created due to CallFwdAll key press or not. The API would return correct indicator only in CFwdAll soft key is pressed in on-hook state. The interface can return one of the following constants:
  • CiscoCall.CFWD_ALL_NONE
  • CiscoCall.CFWD_ALL_SET
  • CiscoCall.CFWD_ALL_CLEAR
  • Returns:
    int
    Since:
    8.0