|
Avaya Conferencing Provider API | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectcom.avaya.conferencing.api.acp.control.AbstractConferencingObject<CallFlowMappingRule>
com.avaya.conferencing.api.acp.control.CallFlowMappingRule
public abstract class CallFlowMappingRule
A rule for deciding what InboundCallFlow an incoming call from an EndPoint will be assigned to.
| Field Summary | |
|---|---|
static java.lang.String |
CONFERENCE_MESSAGE_SET_APPLIED
The property name for isConferenceMessageSetApplied(). |
static java.lang.String |
CONFERENCE_PASSCODE
The property name for getConferencePasscode(). |
static java.lang.String |
DESTINATION_URI_REGEX
The property name for getDestinationUriRegex(). |
static java.lang.String |
END_POINT_PROPERTIES
The property name for getEndPointProperties(). |
static java.lang.String |
INBOUND_CALL_FLOW
The property name for getInboundCallFlow(). |
static java.lang.String |
MESSAGE_SET
The property name for getMessageSet(). |
static java.lang.String |
NAME
The property name for getName(). |
static java.lang.String |
ON_ERROR_CALL_FLOW
The property name for getOnErrorCallFlow(). |
static java.lang.String |
RULE_PRIORITY
The property name for getRulePriority(). |
static java.lang.String |
WELCOME_MESSAGE
The property name for getWelcomeMessage(). |
| Fields inherited from class com.avaya.conferencing.api.acp.control.AbstractConferencingObject |
|---|
VERBOSE_TO_STRING |
| Fields inherited from interface com.avaya.conferencing.api.acp.control.ConferencingObject |
|---|
STATE |
| Constructor Summary | |
|---|---|
CallFlowMappingRule()
|
|
| Method Summary | ||
|---|---|---|
java.lang.String |
getConferencePasscode()
Returns the conference passcode (probably a regular expression) associated with this callflow. |
|
java.util.regex.Pattern |
getDestinationUriRegex()
Returns a Pattern that can be used to match URI's in order to determine if the rule applies. |
|
java.util.Map<java.lang.String,java.lang.Object> |
getEndPointProperties()
Returns the properties for the EndPoint that will be set once the EndPoint is connects. |
|
InboundCallFlow |
getInboundCallFlow()
Returns the InboundCallFlow used for an EndPoint when it first connects. |
|
MessageSet |
getMessageSet()
Returns the message set that is used. |
|
java.lang.String |
getName()
Method getName returns the name of this MediaSource object. |
|
InboundCallFlow |
getOnErrorCallFlow()
Returns the InboundCallFlow used for an EndPoint when an error occurs in the getInboundCallFlow(). |
|
int |
getRulePriority()
In the case where multiple rules match an destinationUri, the rule with the lowest priority will always win. |
|
Message |
getWelcomeMessage()
Returns the welcome message that is played to an EndPoint when it first connects, or null if
no welcome message is played. |
|
boolean |
isConferenceMessageSetApplied()
Returns true when the message set of the Conference will be used for the messages played
specifically to the EndPoint (once the EndPoint has been placed in Conference), or false when the message set of the CallFlowMappingRule will be used for the
messages played specifically to the EndPoint. |
|
abstract
|
lookupDestinationContainer(java.lang.Class<T> containerClass,
java.lang.String destinationUri)
Returns the EndPointContainer that incoming calls at the specified destination URI will be placed into or null if the container does not exist. |
|
abstract java.lang.Class<? extends EndPointContainer<?>> |
lookupDestinationContainerClass(java.lang.String destinationUri)
Returns the class of EndPointContainer that incoming calls at the specified destination URI will be placed into or null if incoming calls will be disconnected. |
|
abstract java.lang.String |
lookupDestinationParticipantCode(java.lang.String destinationUri)
Returns the Conference participant code if it can be determined entirely from the specified destination URI or null if the rule does not place incoming EndPoint calls direct into
conference. |
|
| Methods inherited from class com.avaya.conferencing.api.acp.control.AbstractConferencingObject |
|---|
equals, execute, getVerbs, hashCode, toString |
| Methods inherited from class java.lang.Object |
|---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
| Methods inherited from interface com.avaya.conferencing.api.acp.control.ConferencingObject |
|---|
addAvailableVerbsChangeListener, addPropertyChangeListener, addPropertyChangeListener, addStateChangeListener, executeAs, getAllVerbs, getAllVerbsAs, getAllVerbsAs, getConnection, getId, getProperties, getProperties, getPropertyClass, getPropertyClasses, getPropertyType, getPropertyValue, getPropertyValues, getState, getVerbsAs, removeAvailableVerbsChangeListener, removePropertyChangeListener, removePropertyChangeListener, removeStateChangeListener |
| Field Detail |
|---|
public static final java.lang.String NAME
public static final java.lang.String WELCOME_MESSAGE
public static final java.lang.String MESSAGE_SET
public static final java.lang.String CONFERENCE_MESSAGE_SET_APPLIED
public static final java.lang.String INBOUND_CALL_FLOW
public static final java.lang.String ON_ERROR_CALL_FLOW
public static final java.lang.String END_POINT_PROPERTIES
public static final java.lang.String DESTINATION_URI_REGEX
public static final java.lang.String RULE_PRIORITY
public static final java.lang.String CONFERENCE_PASSCODE
| Constructor Detail |
|---|
public CallFlowMappingRule()
| Method Detail |
|---|
public final java.lang.String getName()
public final Message getWelcomeMessage()
null if
no welcome message is played.
null if
no welcome message is played.public final MessageSet getMessageSet()
public final boolean isConferenceMessageSetApplied()
true when the message set of the Conference will be used for the messages played
specifically to the EndPoint (once the EndPoint has been placed in Conference), or false when the message set of the CallFlowMappingRule will be used for the
messages played specifically to the EndPoint. In either case, the Conference.getMessageSet() will be used for messages played to the Conference.
true when the message set of the Conference will be used for the messages played
specifically to the EndPoint (once the EndPoint has been placed in Conference), or false when the message set of the CallFlowMappingRule will be used
for the messages played specifically to the EndPointpublic final InboundCallFlow getInboundCallFlow()
public final InboundCallFlow getOnErrorCallFlow()
public final java.util.Map<java.lang.String,java.lang.Object> getEndPointProperties()
public final java.util.regex.Pattern getDestinationUriRegex()
getRulePriority()public final int getRulePriority()
public final java.lang.String getConferencePasscode()
public abstract java.lang.Class<? extends EndPointContainer<?>> lookupDestinationContainerClass(java.lang.String destinationUri)
null if incoming calls will be disconnected.
destinationUri - The URI that an incoming call would be connecting to.
null if incoming calls will be disconnected.lookupDestinationContainer(Class, String),
lookupDestinationParticipantCode(String)
public abstract <T extends EndPointContainer<T>> T lookupDestinationContainer(java.lang.Class<T> containerClass,
java.lang.String destinationUri)
null if the container does not exist. For example:
String destinationUri = "sip:65372@10.10.1.1";
Class<? extends EndPointContainer<?>> clazz =
callFlowMappingRule.lookupDestinationContainerClass(destinationUri);
if (clazz.isAssignableFrom(Conference.class)) {
Conference conference =
callFlowMappingRule.lookupDestinationContainer(Conference.class, destinationUri);
if (conference != null) {
// they will have ended up in this conference and the conference is currently open
...
} else {
String participantCode = callFlowMappingRule.lookupDestinationParticipantCode(destinationUri);
if (participantCode != null) {
// they will end up in the conference with this participant code, but the
// conference is not currently open
} else {
// the conference they end up in depends on additional factors, e.g. DTMF input
}
}
} else if (clazz.isAssignableFrom(EndPointQueue.clazz)) {
EndPointQueue queue =
callFlowMappingRule.lookupDestinationContainer(EndPointQueue.class, destinationUri);
if (queue != null) {
// they will have ended up in this queue
if (queue.getPurposes().contains(ConferencingObjectQueue.Purposes.CONNECTIONS_ASSIST_REQUIRED)) {
// this is a queue of EndPoints waiting for operator assistance
...
}
if (queue.getPurposes().contains(ConferencingObjectQueue.Purposes.CONNECTIONS_PENDING)) {
// this is a queue of EndPoints that are providing input to select
// the conference that they will end up in.
...
}
...
}
}
containerClass - The EndPointContainer class.destinationUri - The destination uri.
null if the container does not exist.
java.lang.IllegalArgumentException - if containerClass != lookupDestinationContainerClass(destinationUri)lookupDestinationContainerClass(String),
lookupDestinationParticipantCode(String),
Conference.getParticipantCodes(),
Filters.conferenceParticipantCode(String[]),
ConferencingObjectQueue.Purpose,
ConferencingObjectQueue.getPurposes(),
ConferencingObjectQueue.Purposespublic abstract java.lang.String lookupDestinationParticipantCode(java.lang.String destinationUri)
null if the rule does not place incoming EndPoint calls direct into
conference.
destinationUri - The URI that an incoming call would be connecting to.
null if incoming calls will be disconnected.lookupDestinationContainerClass(String),
lookupDestinationContainer(Class, String)
|
Avaya Conferencing Provider API | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||