com.genesyslab.ail.event
Interface InteractionEvent

All Superinterfaces:
AbstractInteractionEvent, ObjectEvent, java.io.Serializable

public interface InteractionEvent
extends AbstractInteractionEvent

An event on an Interaction.

If actions performed on an interaction are successful, the corresponding interaction interface receives InteractionEvent events that report:

Use InteractionEvents to get the updated interaction interface in order to:


Nested Class Summary
static class InteractionEvent.EventReason
          Constants for the possible event reasons.
static interface InteractionEvent.Extension
          Contains the keys of the extensions possibly present in an InteractionEvent.
 
Method Summary
 InteractionEvent createClone(Dn _dn)
          Creates a clone of this event, but gives it a DN reference.
 Dn getDn()
          Returns the DN to which this event is related.
 InteractionEvent.EventReason getEventReason()
          Returns the reason of this event.
 java.util.Map getExtensions()
          Returns extended information about this event.
 Interaction getInteraction()
          Returns the Interaction to which this event is related.
 Interaction.Status getStatus()
          Returns the status of the Interaction this event is about.
 java.util.Map getTEventExtensions()
          Returns the extensions of this event.
 boolean isStatusChanged()
          Returns true if this event announces a change in the status of the interaction.
 
Methods inherited from interface com.genesyslab.ail.event.AbstractInteractionEvent
getTEventReasons
 
Methods inherited from interface com.genesyslab.ail.event.ObjectEvent
getSource
 

Method Detail

createClone

InteractionEvent createClone(Dn _dn)
Creates a clone of this event, but gives it a DN reference. The Event occurs an Interaction and a DN.


getDn

Dn getDn()
Returns the DN to which this event is related.


getStatus

Interaction.Status getStatus()
Returns the status of the Interaction this event is about.


getExtensions

java.util.Map getExtensions()
Returns extended information about this event. InteractionEvent events can propagate AIL extensions, depending on the action to which they are related. For example, if the InteractionEvent event notifies a ringing voice interaction due to a transfer, your application can get the reason for the call transfer in the AIL extensions, as shown in the following code snippet:
//Retrieval of the map containing the AIL Extensions
Map extensions = ie.getExtensions());

// Retrieval of the transfer reason (if any)
String transferReason = (String) extensions.get(InteractionEvent.Extension.RINGING_TRANSFER_REASON);
// Test whether there is a transfer reason
if(transferReason!= null){
// Display of the corresponding reason
    System.out.println("Transfer reason"+transferReason);
}

Specified by:
getExtensions in interface AbstractInteractionEvent
See Also:
InteractionEvent.Extension

getInteraction

Interaction getInteraction()
Returns the Interaction to which this event is related. This method returns the same as getSource().


getEventReason

InteractionEvent.EventReason getEventReason()
Returns the reason of this event.


isStatusChanged

boolean isStatusChanged()
Returns true if this event announces a change in the status of the interaction. If this event does not announce a status change, returns false .

Specified by:
isStatusChanged in interface AbstractInteractionEvent

getTEventExtensions

java.util.Map getTEventExtensions()
Returns the extensions of this event. These extensions are copied from the TEvent of the T-Server, these are additional data that takes into account switch-specific features.

Specified by:
getTEventExtensions in interface AbstractInteractionEvent
Returns:
the switch-specific extensions set by the TServer.