|
OpenScape V3.2, Revision 044 20100322 |
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface VoiceConnection
Connection of media type voice.
Specific characteristic of a
ComConnection
object
which describes a connection of media type voice. Objects of this class are instantiated on demand
by Basic Communication Service. Creation of such an object is notified either direct by the
onNewConnection(ComConnection, ComEndpoint)
event or indirect by the
onNewCommunication(Communication, ComEndpoint)
event as part of the graph constructed.
Release of such an object is also be done by Basic Communication and notified by an
onTerminated(ComConnection, ComEndpoint)
event.
Method Summary | |
---|---|
void |
alternate()
Alternates between two connections. |
void |
alternate(ComConnection heldConnection)
Deprecated. *** use alternate() instead *** |
void |
answer()
Answers an incoming call. |
boolean |
canAlternate()
Determine whether alternating of the connections is possible. |
boolean |
canAnswer()
Determine whether answering an incoming call is possible. |
boolean |
canDeflect()
Determine whether forwarting of this connection is possible. |
boolean |
canDeflectONS()
Determine whether device handover in state ALERTING is possible. |
boolean |
canDrop()
Determine whether terminating of this connection is possible. |
boolean |
canHold()
Determine whether holding of this connection is possible. |
boolean |
canRetrieve()
Determine whether retrieveing of this connection is possible. |
boolean |
canTransfer()
Determine whether transferring of this connection is possible. |
boolean |
canTransferONS()
Determine whether device handover in state CONNECTED is possible. |
void |
deflectONS()
Hands device over in state ALERTING . |
java.lang.String |
getDisplayName()
Determine the display name used by the communication system. |
java.lang.String |
getDisplayNumber()
Determine the display number used by the communication system. |
FailedReason |
getFailedReason()
Get reason for failed request. |
void |
hold()
Holds a connection. |
boolean |
isDisplayRestricted()
Indicates whether the owner of the connection has requested privacy. |
void |
retrieve()
Retrieves a connection. |
ComConnection |
transfer(ComEndpoint transferToAddr)
Transfers a connection to another target. |
ComConnection |
transfer(java.lang.String targetUri)
Transfers a connection to another target. |
void |
transferONS()
Hands device over in state CONNECTED . |
Methods inherited from interface com.siemens.symphonia.bcom.bcommon.external.ComConnection |
---|
deflect, deflect, drop, getComEndpoint, getCommunication, getInitiationCause, getObjectId, getState, getTerminationCause, isMyConnection |
Method Detail |
---|
void answer()
An alerting call is answered. I.e. the state of the connection changes from
ALERTING
to
CONNECTED
and a communication
to the caller is possible.
Note:
This method invokes a synchronous service request which implicates:
ComException
- on immediate detected problems.void hold()
The state of the connection is changed from
CONNECTED
to
HELD
. The other participant(s) of the
communication can't hear the participant of this connection anymore.
Notes:
Typically there is played music on hold for the other participant(s). In case of an VCC controlled conference this
is suppressed not to disturb the other participants of the conference.
This method invokes a synchronous service request which implicates:
ComException
- on immediate detected problems.void retrieve()
The state of the connection is changed from
HELD
to
CONNECTED
. The participant of this
connection can talk again to the other participant(s).
Note:
This method invokes a synchronous service request which implicates:
ComException
- on immediate detected problems.void alternate()
After setting up two connections in two different communications e.g. by using
consult(ComConnection, ComEndpoint)
it is possible to toggle between the two connection. The connection in
state CONNECTED
changes to
HELD
and the other connection from
state HELD
to
CONNECTED
. Therefore it is possible
to talk to the two participants alternately.
This method must always be invoked on the VoiceConnection
object which is in state
CONNECTED
.
Note:
This method invokes a synchronous service request which implicates:
ComException
- on immediate detected problems.void alternate(ComConnection heldConnection)
After setting up two connections in two different communications e.g. by using
consult(ComConnection, ComEndpoint)
it is possible to toggle between the two connection. The connection in
state CONNECTED
changes to
HELD
and the other connection from
state HELD
to
CONNECTED
. Therefore it is possible
to talk to the two participants alternately.
This method must always be invoked on the VoiceConnection
object which is in state
CONNECTED
.
The other connection is given as parameter.
Note:
This method invokes a synchronous service request which implicates:
heldConnection
- the VoiceConnection
object which is in state
HELD
.
ComException
- on immediate detected problems.void deflectONS()
ALERTING
.
Allows to hand a connection in state
ALERTING
over from
the currently used device
to another device. You can then take the call on the new device. The caller doesn't get aware of this operation.
It is possible to do this multiple times, i.e. hand the connection again over to another device. And it is also
possible to bring the
connection back to the original device by this method.
The new device to be handed over to is selected in the following precedence:
setPreferredDevice(ComEndpoint)
.
setPreferredDevice(ComEndpoint)
must be used.
This connection will terminate and a new connection is created. The new connection will come into existence
through a
onNewConnection(ComConnection, ComEndpoint)
event. The new connection becomes the own connection in the given
user or device view (i.e. the method
isMyConnection()
will
return true). The new connection will also receive an
onAlerting(ComConnection, ComEndpoint)
event.
Notes:
General:
This method invokes a synchronous service request which implicates:
ComConnection transfer(ComEndpoint transferToAddr)
While beeing in communication with another party it is possible to transfer this party to another target. The own connection is terminated as result of a successful transfer.
As long as the transfer is ongoing (i.e. the target has not yet answerred the call) the own connection is kept
in the state TRANSFER_PENDING
.
If the target doesn't answer the call at all and the communication system is setup to "recall" the communication
the call will be presented again on this connection. I.e. the state will change from
TRANSFER_PENDING
to
ALERTING
. This way a recall of a
transferred connection can be detected.
Otherwise (i.e. the target answers the call) this connection gets terminated.
Note:
This method invokes a synchronous service request which implicates:
transferToAddr
- endpoint of new destination.
ComConnection
object.
ComException
- on immediate detected problems.ComConnection transfer(java.lang.String targetUri)
Has the same semantics as
transfer(ComEndpoint)
but allows to specify the communication target as URI. The following URI formats are supported:
getComEndpointsForNumber()
with lineout
parameter set to
MANUAL
.
targetUri
- URI new connection should be established to.
ComConnection
object.
ComException
- on immediate detected problems.void transferONS()
CONNECTED
.
Has the same semantics as
deflectONS()
.
The difference is it can be used in the state
CONNECTED
.
I.e. an established call can be handed over to another device without interrupting the communication.
See deflectONS()
for
further details.
boolean canAnswer()
Allows to check whether an invocation of the method
answer()
is possible in the current state of the communication. This might change with every state change of the
communication.
boolean canDrop()
Allows to check whether an invocation of the method
drop()
is possible in the current state of the communication. This might change with every state change of the
communication.
boolean canDeflect()
Allows to check whether an invocation of the method
deflect(ComEndpoint)
or
deflect(String)
is possible in the current state of the communication. This might change with every state change of the
communication.
boolean canDeflectONS()
ALERTING
is possible.
Allows to check whether an invocation of the method
deflectONS()
is possible in the current state of the communication. This might change with every state change of the
communication.
boolean canTransfer()
Allows to check whether an invocation of the method
transfer(ComEndpoint)
or
transfer(String)
is possible in the current state of the communication. This might change with every state change of the
communication.
boolean canTransferONS()
CONNECTED
is possible.
Allows to check whether an invocation of the method
transferONS()
is possible in the current state of the communication. This might change with every state change of the
communication.
boolean canHold()
Allows to check whether an invocation of the method
hold()
is possible in the current state of the communication. This might change with every state change of the
communication.
boolean canRetrieve()
Allows to check whether an invocation of the method
retrieve()
is possible in the current state of the communication. This might change with every state change of the
communication.
boolean canAlternate()
Allows to check whether an invocation of the method
alternate(ComConnection)
is possible in the current state of the communication. This might change with every state change of the
communication.
boolean isDisplayRestricted()
Privacy means that the number, name or anything else identifieing the user/device may not be shown. In general any GUI application must show then localized "private" and do not perform directory name lookup, the private number must not permeate to the user.
In addition we have the dial out scenario where a user is dialing a number xyz which has display restriction. Of course since the user dialed xyz he wants to see xyz in the GUI even if the infrastructure signals that xyz is a number with display restrictions. So we need to display xyz in the GUI of this user, but not in the GUI of another user.
When the call is moved to another device we need of course to honor the display restriction above.
Beyond displaying on the GUI the ComEndpoint
can be used at any time to lookup the directory entry
or any other purpose. I.e. it is up to the client to implement this display restriction.
java.lang.String getDisplayName()
The name displayed on the phone device of the communication partners to this connection is determined by this method. This depends on the configuration of the communication system and may be not configured at all.
OpenScape clients should not rely on this information because it is not part of OpenScape configuration. It should be considered informational only.
null
if not configured.java.lang.String getDisplayNumber()
The phone number displayed on the phone device of the communication partners to this connection is determined by this method. This depends on the configuration of the communication system and may be not configured at all.
OpenScape clients should not rely on this information because it is not part of OpenScape configuration. It should be considered informational only.
For the GUI this is the preferred representation of a number to display because it is consistent with the display
on the phone devices itself. Only if this information is not available
ComEndpoint
should be taken for number display.
null
if not configured.FailedReason getFailedReason()
Each request sent to a communication system might fail. This is indicated by an
onFailed(ComConnection, ComEndpoint)
event. The reason for this failure can be determined by this method.
Note:
A failed reason is only available while processing an
onFailed(ComConnection, ComEndpoint)
event. Therefore only while this processing a valid reason is returned.
|
OpenScape V3.2, Revision 044 20100322 |
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
This software is the confidential and proprietary information of Siemens Enterprise Communications, Germany