|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface CiscoRemoteTerminal
CiscoRemoteTerminal is a new interface that is being exposed to applications, it extends the interface of CiscoTerminal. A CiscoRemoteTerminal is a special kind of CiscoTerminal that allows applications to monitor remote devices such as PSTN, PBX, Mobiles phones, etc. A CiscoRemoteTerminal shall have an enterprise number associated to it, along with remote destinations. The max number of remote destinations can be configured for a single CiscoRemoteTerminal depends on its owner user's max remote destinations configuration (from 1 to 10, with a default max of 4) on the CUCM Admin user page. If there are multiple remote destinations (RD), only one of them can be set as the active remote destination (Active RD). Each Remote Destination Number must be unique within the CUCM cluster. Like CiscoTerminal, a CiscoRemoteTerminal endpoint is observable and controllable in a third-party manner. A remote device's remote destination is exposed through the CiscoRemoteDestinationInfo interface of the associated CiscoRemoteTerminal.
NOTE: Only "CTIRD" (CTI Remote Device) and "CUCSF (Cisco Unified Client Services Framework) device in Extend mode" appear as CiscoRemoteTerminal through JTAPI.
To monitor and control a particular CiscoRemoteTerminal, an application first adds an observer
that implements the CiscoTerminalObserver
interface using the
Terminal.addObserver
method. Applications can observe/control the call connected
at the remote destination by adding callobserver on the address/terminal of associated
CiscoRemoteTerminal.
For Incoming call to CiscoRemoteTerminal, JTAPI events sent to applications is similar to other CTI controlled Cisco Terminals. If an active remote destination is set for a CiscoRemoteTerminal, an incoming call only rings at the active remote destination; if not set, all remote destinations can ring, and any of these remote destinations will be able to answer the call. Only after a remote destination answers the call, the call will be connected to the CiscoRemoteTerminal. For Outgoing DVO (Dial via Office) call from CiscoRemoteTerminal, the behavior is different than an usual outgoing call from other Cisco Terminals. It requires an active remote destination to be set on the CiscoRemoteTerminal that the outgoing call will be made from. To place DVO outbound call, application use the same Call.connect() interface as usual. Only after the active remote destination answers the call, the call will then be offered to the actual called party.
CiscoTerminal
Field Summary | |
---|---|
static int |
EXTEND_MEDIA_REGISTRATION
This registration type applies to "Cisco Unified Client Services Framework" device/terminal that is registered in Extend mode, which as a result is represented as a CiscoRemoteTerminal. |
static int |
NO_EXTEND_MEDIA_REGISTRATION
This registration type applies to non-"Cisco Unified Client Services Framework" device/terminal that is static registered and is represented as a CiscoRemoteTerminal, such as a "CTI Remote Device". |
Method Summary | |
---|---|
void |
addRemoteDestination(java.lang.String remoteDestinationName,
java.lang.String remoteDestinationNumber,
boolean isActiveRD)
This API will add a new remote destination to the CiscoRemoteTerminal. |
CiscoRemoteDestinationInfo[] |
getActiveRemoteDestinations()
This API will return an array CiscoRemoteDestinationInfo representing all active remote destinations of the CiscoRemoteTerminal, or null if none. |
CiscoRemoteDestinationInfo[] |
getAllRemoteDestinations()
This API will return an array of CiscoRemoteDestinationInfo representing all remote destinations of the CiscoRemoteTerminal, or null if none. |
int |
getRegistrationType()
This API will return the registration type with which this terminal has been registered in. |
boolean |
isMyAppLastToSetActiveRD()
This API will return true if this application is the last application to set active remote destination for the CiscoRemoteTerminal; return false otherwise. |
boolean |
isRegisteredByThisApp()
This API will return true if this application issued a successful registration request to register this terminal in Extend mode. |
void |
removeAllRemoteDestinations()
This API will remove all associated remote destinations from the CiscoRemoteTerminal. |
void |
removeRemoteDestination(java.lang.String remoteDestinationNumber)
This API will remove a remote destination from the CiscoRemoteTerminal based on the remote destination number. |
void |
setActiveRemoteDestination(java.lang.String remoteDestinationNumber,
boolean isActiveRD)
This API will set/unset an active remote destination of the CiscoRemoteTerminal based on the remote destination number. |
void |
updateRemoteDestination(java.lang.String remoteDestinationNumber,
java.lang.String remoteDestinationName,
java.lang.String newRemoteDestinationNumber,
boolean isActiveRD)
This API will update a remote destination of the CiscoRemoteTerminal based on the remote destination number. |
void |
updateRemoteDestinationName(java.lang.String remoteDestinationNumber,
java.lang.String remoteDestinationName)
This API will update the name of a remote destination of the CiscoRemoteTerminal based on the remote destination number. |
void |
updateRemoteDestinationNumber(java.lang.String remoteDestinationNumber,
java.lang.String newRemoteDestinationNumber)
This API will update the number of a remote destination of the CiscoRemoteTerminal based on the remote destination number. |
Methods inherited from interface javax.telephony.Terminal |
---|
addCallObserver, addObserver, getAddresses, getCallObservers, getCapabilities, getName, getObservers, getProvider, getTerminalCapabilities, getTerminalConnections, removeCallObserver, removeObserver |
Methods inherited from interface com.cisco.jtapi.extensions.CiscoObjectContainer |
---|
getObject, setObject |
Field Detail |
---|
static final int EXTEND_MEDIA_REGISTRATION
static final int NO_EXTEND_MEDIA_REGISTRATION
Method Detail |
---|
CiscoRemoteDestinationInfo[] getAllRemoteDestinations() throws javax.telephony.InvalidStateException
javax.telephony.InvalidStateException
- If Provider is not in serviceCiscoRemoteDestinationInfo[] getActiveRemoteDestinations() throws javax.telephony.InvalidStateException
javax.telephony.InvalidStateException
- If Provider is not in servicevoid setActiveRemoteDestination(java.lang.String remoteDestinationNumber, boolean isActiveRD) throws javax.telephony.InvalidStateException, javax.telephony.InvalidArgumentException
remoteDestinationNumber
- isActiveRD
-
javax.telephony.InvalidStateException
- If Provider is not in service
javax.telephony.InvalidArgumentException
- If the parameter is nullvoid addRemoteDestination(java.lang.String remoteDestinationName, java.lang.String remoteDestinationNumber, boolean isActiveRD) throws javax.telephony.InvalidStateException, javax.telephony.InvalidArgumentException
remoteDestinationName
- remoteDestinationNumber
- isActiveRD
-
javax.telephony.InvalidStateException
- If Provider is not in service
javax.telephony.InvalidArgumentException
- If the parameter is nullvoid removeRemoteDestination(java.lang.String remoteDestinationNumber) throws javax.telephony.InvalidStateException, javax.telephony.InvalidArgumentException
remoteDestinationNumber
-
javax.telephony.InvalidStateException
- If Provider is not in service
javax.telephony.InvalidArgumentException
- If the parameter is nullvoid removeAllRemoteDestinations() throws javax.telephony.InvalidStateException
javax.telephony.InvalidStateException
- If Provider is not in servicevoid updateRemoteDestinationName(java.lang.String remoteDestinationNumber, java.lang.String remoteDestinationName) throws javax.telephony.InvalidStateException, javax.telephony.InvalidArgumentException
remoteDestinationNumber
- remoteDestinationName
-
javax.telephony.InvalidStateException
- If Provider is not in service
javax.telephony.InvalidArgumentException
- If the parameter is nullvoid updateRemoteDestinationNumber(java.lang.String remoteDestinationNumber, java.lang.String newRemoteDestinationNumber) throws javax.telephony.InvalidStateException, javax.telephony.InvalidArgumentException
remoteDestinationNumber
- newRemoteDestinationNumber
-
javax.telephony.InvalidStateException
- If Provider is not in service
javax.telephony.InvalidArgumentException
- If the parameter is nullvoid updateRemoteDestination(java.lang.String remoteDestinationNumber, java.lang.String remoteDestinationName, java.lang.String newRemoteDestinationNumber, boolean isActiveRD) throws javax.telephony.InvalidStateException, javax.telephony.InvalidArgumentException
remoteDestinationNumber
- remoteDestinationName
- newRemoteDestinationNumber
- isActiveRD
-
javax.telephony.InvalidStateException
- If Provider is not in service
javax.telephony.InvalidArgumentException
- If the parameter is nullboolean isRegisteredByThisApp()
int getRegistrationType()
boolean isMyAppLastToSetActiveRD() throws javax.telephony.InvalidStateException
javax.telephony.InvalidStateException
- If Provider is not in service
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |