Interaction SDK
(Web Services)

Service: AgentService


This service is used to access data of agents or persons, and to perform agent actions.
Attribute Summary
String[] agent:agentGroups
           AgentGroups identifiers to which this agent belongs.
String[] agent:availableMedias
           All the available media names of the current place of this agent.
String agent:currentPlaceId
           ID of this agent's current place. An agent is considered as 'sitting' on the place of the last DN on which the agent has logged in. Only the last logged DN is taken into account. It means that, if the agent logs into a DN of another place, he is no more seen as sitting on the first place but on the one of the last logged DN. And this despite the fact that he is still logged on the first DN. If the agent is not logged in anywhere, this method will return null if the agent has no default place.
String agent:defaultPlaceId
           ID of an agent's default place; null, if the agent has no default place. Refer to the Configuration Layer documentation to set default places to agents.
com.genesyslab.ail.ws.agent.DnActionsPossible agent:dnActionsPossible
           Updated possible agent actions on the DN related to the VoiceMediaEvent. Sent only on VoiceMediaEvent.
com.genesyslab.ail.ws.agent.AgentDnEventReason agent:dnEventReason
           DN event reason. Sent only on VoiceMediaEvent.
com.genesyslab.ail.ws.place.VoiceMediaInfo[] agent:dns
           All the DNs of the current place of this agent.
com.genesyslab.ail.ws.agent.DnActionsPossible[] agent:dnsActionsPossible
           Possible agent actions on each DN. The agent must be logged into a place; otherwise, null.
com.genesyslab.ail.ws.agent.DnWorkmodesPossible[] agent:dnsWorkmodesPossible
           Possible agent workmodes on each DN. The agent must be logged on a place; otherwise, null.
com.genesyslab.ail.ws.place.VoiceMediaInfo[] agent:loggedDns
           DNs on which this agent is currently logged in.
com.genesyslab.ail.ws.place.MediaInfo[] agent:loggedMedias
           All the media on which this agent is currently logged in.
String[] agent:loginIds
           List of this agent's login IDs. These login IDs are those configured in the 'Agent Info' tab in the Configuration Layer.
com.genesyslab.ail.ws.agent.MediaActionsPossible agent:mediaActionsPossible
           Updated possible agent actions on the medium related to the MediaEvent. Sent only on MediaEvent.
com.genesyslab.ail.ws.agent.AgentMediaEventReason agent:mediaEventReason
           Medium event reason. Sent only on MediaEvent.
com.genesyslab.ail.ws.place.MediaInfo agent:mediaInfo
           Agent status on the event-related medium. Sent only on MediaEvent.
com.genesyslab.ail.ws.agent.MediaActionsPossible[] agent:mediasActionsPossible
           Possible agent actions on each medium. The agent must be logged into a place; otherwise, null.
String agent:mediaStatusReason
           Medium status reason. Sent only on MediaEvent.
String agent:mediaStatusReasonDescription
           Medium status reason description. Sent only on MediaEvent.
String agent:placeChanged
           New place identifier. Sent only on PlaceChangedEvent.
String agent:queue
           the queue to which this event is related. Sent only on VoiceMediaEvent.
String agent:signature
           Agent's signature, or the default signature (defined the application options) if this agent has no signature defined in the Configuration Layer.
com.genesyslab.ail.ws.agent.Skill[] agent:skills
           This agent's skills. These are defined in the Configuration Layer.
com.genesyslab.ail.ws.agent.LoginIdsSwitch[] agent:switchesLoginIds
           Agent's login IDs per switch.
com.genesyslab.ail.ws.KeyValue[] agent:TEventExtensions
           TEvent extensions that might have come with the TEvent that caused this event. Sent only on VoiceMediaEvent.
com.genesyslab.ail.ws.KeyValue[] agent:TEventReasons
           Switch-specific reasons that might have come with the TEvent that caused this event. Sent only on VoiceMediaEvent.
com.genesyslab.ail.ws.place.VoiceMediaInfo agent:voiceMediaInfo
           Agent status on the event-related DN. Sent only on VoiceMediaEvent.
String person:agentId
           The event-related person's identifier. This attribute represents the person's username.
com.genesyslab.ail.ws.KeyValue[] person:annex
           Additional information about this person. This corresponds to the 'Annex' tab in the Configuration Layer.
String person:employeeId
           The person's employee identifier.
String person:firstname
           The person's first name.
boolean person:isAgent
           true if this person is really an agent.
boolean person:isEnabled
           The Configuration Layer status of the Person object.
String person:lastname
           The person's last name.

Method Summary
com.genesyslab.ail.ws.agent.MediaInfoError[] afterCallwork
           Sets this agent’s DNs to the ‘after-call work’ state. This method has the same effect as calling notReady() with the option Workmode.AFTER_CALL_WORK.
boolean changePassword
           Changes the password of a person.
com.genesyslab.ail.ws.agent.PasswordReason changePasswordEx
           Changes the password of a person.
boolean checkPassword
           Checks the password of a person.
com.genesyslab.ail.ws.agent.PasswordReason checkPasswordEx
           Checks the password of a person.
com.genesyslab.ail.ws.AttributeError[] deleteResourceProperties
           Deletes a list of resource properties.
com.genesyslab.ail.ws.agent.AgentListDTO getAgentsDTO
           Retrieves a list of existing agents. index = 0 and length = -1 : returns all the agents. index = 0 and length = 8 : returns the first eight agents. index = 8 and length = 8 : returns the next eight agents. index = 7 and length = -1 : returns all the agents except the first seven.
com.genesyslab.ail.ws.agent.LoginIdPersonId[] getPersonIdByLoginIds
           Returns the identifiers (user name) of Person from login identifiers on a switch.
com.genesyslab.ail.ws.agent.PersonDTO[] getPersonsDTO
           Retrieves all the requested attributes on persons.
com.genesyslab.ail.ws.agent.ResourceProperty[] getResourceProperties
           Returns a list of resource property
com.genesyslab.ail.ws.agent.MediaInfoError[] login
           Logs this agent in.
com.genesyslab.ail.ws.agent.MediaInfoError[] logout
           Logs this agent out.
com.genesyslab.ail.ws.agent.MediaInfoError[] notReady
           Sets this agent's DNs and media to not ready.
com.genesyslab.ail.ws.agent.MediaInfoError[] ready
           Sets ready this agent's DNs and media to ready.
com.genesyslab.ail.ws.agent.PersonError[] setPersonsDTO
           Sets the data on these persons.
com.genesyslab.ail.ws.AttributeError[] setResourceProperties
           Sets a list of resource property key-value pairs.

Event Summary
MediaEvent
           Media event on an agent other than a voice media event. For example, for chat or email media.
PlaceChangedEvent
           Event sent when the associated place has changed.
VoiceMediaEvent
           Voice media event on an agent.

Attribute Detail

Attributes of domain agent

Agent attributes definition


agentGroups

Type: String[]
AgentGroups identifiers to which this agent belongs.
Properties: read


availableMedias

Type: String[]
All the available media names of the current place of this agent.
Properties: read read-default


currentPlaceId

Type: String
ID of this agent's current place. An agent is considered as 'sitting' on the place of the last DN on which the agent has logged in. Only the last logged DN is taken into account. It means that, if the agent logs into a DN of another place, he is no more seen as sitting on the first place but on the one of the last logged DN. And this despite the fact that he is still logged on the first DN. If the agent is not logged in anywhere, this method will return null if the agent has no default place.
Properties: read read-default event-default event


defaultPlaceId

Type: String
ID of an agent's default place; null, if the agent has no default place. Refer to the Configuration Layer documentation to set default places to agents.
Properties: read read-default event


dnActionsPossible

Type: com.genesyslab.ail.ws.agent.DnActionsPossible
Updated possible agent actions on the DN related to the VoiceMediaEvent. Sent only on VoiceMediaEvent.
Properties: event


dnEventReason

Type: com.genesyslab.ail.ws.agent.AgentDnEventReason
DN event reason. Sent only on VoiceMediaEvent.
Properties: event-default event


dns

Type: com.genesyslab.ail.ws.place.VoiceMediaInfo[]
All the DNs of the current place of this agent.
Properties: read read-default


dnsActionsPossible

Type: com.genesyslab.ail.ws.agent.DnActionsPossible[]
Possible agent actions on each DN. The agent must be logged into a place; otherwise, null.
Properties: read


dnsWorkmodesPossible

Type: com.genesyslab.ail.ws.agent.DnWorkmodesPossible[]
Possible agent workmodes on each DN. The agent must be logged on a place; otherwise, null.
Properties: read


loggedDns

Type: com.genesyslab.ail.ws.place.VoiceMediaInfo[]
DNs on which this agent is currently logged in.
Properties: read read-default


loggedMedias

Type: com.genesyslab.ail.ws.place.MediaInfo[]
All the media on which this agent is currently logged in.
Properties: read read-default


loginIds

Type: String[]
List of this agent's login IDs. These login IDs are those configured in the 'Agent Info' tab in the Configuration Layer.
Properties: read read-default


mediaActionsPossible

Type: com.genesyslab.ail.ws.agent.MediaActionsPossible
Updated possible agent actions on the medium related to the MediaEvent. Sent only on MediaEvent.
Properties: event


mediaEventReason

Type: com.genesyslab.ail.ws.agent.AgentMediaEventReason
Medium event reason. Sent only on MediaEvent.
Properties: event-default event


mediaInfo

Type: com.genesyslab.ail.ws.place.MediaInfo
Agent status on the event-related medium. Sent only on MediaEvent.
Properties: event-default event


mediasActionsPossible

Type: com.genesyslab.ail.ws.agent.MediaActionsPossible[]
Possible agent actions on each medium. The agent must be logged into a place; otherwise, null.
Properties: read


mediaStatusReason

Type: String
Medium status reason. Sent only on MediaEvent.
Properties: event


mediaStatusReasonDescription

Type: String
Medium status reason description. Sent only on MediaEvent.
Properties: event


placeChanged

Type: String
New place identifier. Sent only on PlaceChangedEvent.
Properties: event-default event


queue

Type: String
the queue to which this event is related. Sent only on VoiceMediaEvent.
Properties: event


signature

Type: String
Agent's signature, or the default signature (defined the application options) if this agent has no signature defined in the Configuration Layer.
Properties: read read-default write


skills

Type: com.genesyslab.ail.ws.agent.Skill[]
This agent's skills. These are defined in the Configuration Layer.
Properties: read read-default


switchesLoginIds

Type: com.genesyslab.ail.ws.agent.LoginIdsSwitch[]
Agent's login IDs per switch.
Properties: read


TEventExtensions

Type: com.genesyslab.ail.ws.KeyValue[]
TEvent extensions that might have come with the TEvent that caused this event. Sent only on VoiceMediaEvent.
Properties: event


TEventReasons

Type: com.genesyslab.ail.ws.KeyValue[]
Switch-specific reasons that might have come with the TEvent that caused this event. Sent only on VoiceMediaEvent.
Properties: event


voiceMediaInfo

Type: com.genesyslab.ail.ws.place.VoiceMediaInfo
Agent status on the event-related DN. Sent only on VoiceMediaEvent.
Properties: event-default event


Attributes of domain person

Person attributes definition. The attributes agentId, lastname, firstname, employeeId in read mode do not need the ail to load fully the object Agent.


agentId

Type: String
The event-related person's identifier. This attribute represents the person's username.
Properties: read event-default event


annex

Type: com.genesyslab.ail.ws.KeyValue[]
Additional information about this person. This corresponds to the 'Annex' tab in the Configuration Layer.
Properties: read write


employeeId

Type: String
The person's employee identifier.
Properties: read read-default event


firstname

Type: String
The person's first name.
Properties: read read-default event


isAgent

Type: boolean
true if this person is really an agent.
Properties: read event


isEnabled

Type: boolean
The Configuration Layer status of the Person object.
Properties: read


lastname

Type: String
The person's last name.
Properties: read read-default event


Method Detail

afterCallwork

Sets this agent’s DNs to the ‘after-call work’ state. This method has the same effect as calling notReady() with the option Workmode.AFTER_CALL_WORK.
Parameters:

  agentId  String
   the method is applied on this agent.

  voiceForm  com.genesyslab.ail.ws.agent.AfterCallWorkVoiceForm
   The afterCallwork voice form.

Returns:

  Type:  com.genesyslab.ail.ws.agent.MediaInfoError[]

   For each media the error if any and information about it.

Errors:

  error.common.AilFactoryNotInitialized

  error.common.ParameterInvalid

  error.agent.PersonNotExist

  error.agent.NotAnAgent

  error.agent.DnNotExist
  

  error.agent.AfterCallWorkFailed
  


changePassword

Changes the password of a person.
Parameters:

  personId  String
   The person's identifier.

  oldPassword  String
   The current password.

  newPassword  String
   The new password.

Returns:

  Type:  boolean

   true if the password was successfully changed.

Errors:

  error.common.AilFactoryNotInitialized

  error.agent.PersonNotExist


changePasswordEx

Changes the password of a person.
Parameters:

  personId  String
   The person's identifier.

  oldPassword  String
   The current password.

  newPassword  String
   The new password.

Returns:

  Type:  com.genesyslab.ail.ws.agent.PasswordReason

   The result with password reason.

Errors:

  error.common.AilFactoryNotInitialized

  error.agent.PersonNotExist


checkPassword

Checks the password of a person.
Parameters:

  personId  String
   The person's identifier.

  password  String
   The password to test.

Returns:

  Type:  boolean

   true if the given password is correct.

Errors:

  error.common.AilFactoryNotInitialized

  error.agent.PersonNotExist


checkPasswordEx

Checks the password of a person.
Parameters:

  personId  String
   The person's identifier.

  password  String
   The password to test.

Returns:

  Type:  com.genesyslab.ail.ws.agent.PasswordReason

   The result with password reason.

Errors:

  error.common.AilFactoryNotInitialized

  error.agent.PersonNotExist


deleteResourceProperties

Deletes a list of resource properties.
Parameters:

  personId  String
   The person identifier.

  keys  String[]
   The keys to delete.

Returns:

  Type:  com.genesyslab.ail.ws.AttributeError[]

   The errors if any. The field 'attribute' contains the key value in error.

Errors:

  error.common.AilFactoryNotInitialized

  error.common.ParameterInvalid
  

  error.common.RequestFailed
  

  error.agent.ResourceManagerNotExist


getAgentsDTO

Retrieves a list of existing agents. index = 0 and length = -1 : returns all the agents. index = 0 and length = 8 : returns the first eight agents. index = 8 and length = 8 : returns the next eight agents. index = 7 and length = -1 : returns all the agents except the first seven.
Parameters:

  index  int
   Index of the first item to return. 0 starts from the beginning. A negative value counts from the end.

  length  int
   Length of the list to return or -1 for unlimited list.

  attributes  String[]
   The attributes to retrieve (person:agentId, person:firstname, person:lastname, person:employeeId, person:isEnabled, person:annex, agent:skills).

Returns:

  Type:  com.genesyslab.ail.ws.agent.AgentListDTO

   The attributes for each agent.

Errors:

  error.common.AilFactoryNotInitialized


getPersonIdByLoginIds

Returns the identifiers (user name) of Person from login identifiers on a switch.
Parameters:

  loginIds  String[]
   The login identifiers.

  switchName  String
   The name of the switch. Can be null if the login IDs is unique in the Configuration Layer.

Returns:

  Type:  com.genesyslab.ail.ws.agent.LoginIdPersonId[]

   The LoginIdPersonId association list. The person identifier is null, if no one could be found or if more than one user have been found.

Errors:

  error.common.AilFactoryNotInitialized

  error.common.ParameterInvalid


getPersonsDTO

Retrieves all the requested attributes on persons.
Parameters:

  personIds  String[]
   The persons' identifiers.

  attributes  String[]
   The attributes to retrieve (person:* , agent:*).

Returns:

  Type:  com.genesyslab.ail.ws.agent.PersonDTO[]

   The attributes for each person. NB : if the person identifier is invalid, it does not return data for the associated person.

Errors:

  error.common.AilFactoryNotInitialized

  error.common.ParameterInvalid


getResourceProperties

Returns a list of resource property
Parameters:

  personId  String
   The person identifier.

  keys  String[]
   The keys to retrieve. If null, retrieve all the resource property from this person.

Returns:

  Type:  com.genesyslab.ail.ws.agent.ResourceProperty[]

   The ResourceProperty list.

Errors:

  error.common.AilFactoryNotInitialized

  error.common.ParameterInvalid

  error.common.RequestFailed

  error.agent.ResourceManagerNotExist


login

Logs this agent in.
Parameters:

  agentId  String
   The agent that is logging in.

  placeId  String
   The place where the agent attempts to log in. Can be null, in which case the method attempts to log the agent into this agent's default place.

  voiceForm  com.genesyslab.ail.ws.agent.LoginVoiceForm
   The login voice form.

  mediaForm  com.genesyslab.ail.ws.agent.MediaForm
   The login media form.

Returns:

  Type:  com.genesyslab.ail.ws.agent.MediaInfoError[]

   For each media, the error (if any) and information about it.

Errors:

  error.common.AilFactoryNotInitialized

  error.common.ParameterInvalid

  error.agent.PersonNotExist

  error.agent.NotAnAgent

  error.agent.PlaceNotExist

  error.agent.PlaceInvalid

  error.agent.LoginFailed
  

  error.agent.DnNotExist
  

  error.common.InteractionServerTimeout
  

  error.common.InteractionServerCode::Type:x1::Number:x2
  


logout

Logs this agent out.
Parameters:

  agentId  String
   The agent that logs out.

  voiceForm  com.genesyslab.ail.ws.agent.LogoutVoiceForm
   The logout voice form specifying which DNs to logout.

  mediaForm  com.genesyslab.ail.ws.agent.MediaForm
   The logout media form specifying which media to logout.

Returns:

  Type:  com.genesyslab.ail.ws.agent.MediaInfoError[]

   For each media, the error (if any) and information about it.

Errors:

  error.common.AilFactoryNotInitialized

  error.common.ParameterInvalid

  error.agent.PersonNotExist

  error.agent.NotAnAgent

  error.agent.DnNotExist
  

  error.agent.LogoutFailed
  

  error.common.InteractionServerTimeout
  

  error.common.InteractionServerCode::Type:x1::Number:x2
  


notReady

Sets this agent's DNs and media to not ready.
Parameters:

  agentId  String
   The agent that gets not ready.

  voiceForm  com.genesyslab.ail.ws.agent.ReadyVoiceForm
   The not-ready voice form.

  mediaForm  com.genesyslab.ail.ws.agent.MediaForm
   The not-ready media form.

Returns:

  Type:  com.genesyslab.ail.ws.agent.MediaInfoError[]

   For each media, the error (if any) and information about it.

Errors:

  error.common.AilFactoryNotInitialized

  error.common.ParameterInvalid

  error.agent.PersonNotExist

  error.agent.NotAnAgent

  error.agent.DnNotExist
  

  error.agent.NotReadyFailed
  

  error.common.InteractionServerTimeout
  

  error.common.InteractionServerCode::Type:x1::Number:x2
  


ready

Sets ready this agent's DNs and media to ready.
Parameters:

  agentId  String
   The agent that gets ready.

  voiceForm  com.genesyslab.ail.ws.agent.ReadyVoiceForm
   The ready voice form.

  mediaForm  com.genesyslab.ail.ws.agent.MediaForm
   The ready media form.

Returns:

  Type:  com.genesyslab.ail.ws.agent.MediaInfoError[]

   For each media, the error (if any) and information about it.

Errors:

  error.common.AilFactoryNotInitialized

  error.common.ParameterInvalid

  error.agent.PersonNotExist

  error.agent.NotAnAgent

  error.agent.DnNotExist
  

  error.agent.ReadyFailed
  

  error.common.InteractionServerTimeout
  

  error.common.InteractionServerCode::Type:x1::Number:x2
  


setPersonsDTO

Sets the data on these persons.
Parameters:

  datas  com.genesyslab.ail.ws.agent.PersonDTO[]
   The attributes to set for each person (person:*, agent:*).

Returns:

  Type:  com.genesyslab.ail.ws.agent.PersonError[]

   The errors on each agent.

Errors:

  error.common.AilFactoryNotInitialized

  error.common.RequestFailed
  

  error.common.ConfigurationService
  

  error.common.BadAttributeType
  

  error.agent.NotAnAgent
  


setResourceProperties

Sets a list of resource property key-value pairs.
Parameters:

  personId  String
   The person identifier.

  keyValues  com.genesyslab.ail.ws.agent.ResourcePropertyKeyValue[]
   The keyValues to set.

Returns:

  Type:  com.genesyslab.ail.ws.AttributeError[]

   The errors if any. The field 'attribute' contains the key-value in error.

Errors:

  error.common.AilFactoryNotInitialized

  error.common.ParameterInvalid
  

  error.common.RequestFailed
  

  error.agent.ResourceManagerNotExist


Event Detail

MediaEvent

Media event on an agent other than a voice media event. For example, for chat or email media.
Available attributes:  person:*, agent:* except agent:placeChanged, agent:voiceMediaInfo, agent:dnEventReason

Filters:

  Key: STATUS_CHANGED   Value: one agent media status value.  -  See com.genesyslab.ail.ws.place.MediaStatus definition

  Key: MEDIA_TYPE   Value: one agent media type value.  -  See com.genesyslab.ail.ws.place.MediaType definition

Triggers:

  Key: AGENT   Value: agentId  -  Subscribes on this agent

  Key: PLACE   Value: placeId  -  Subscribes on this place


PlaceChangedEvent

Event sent when the associated place has changed.
Available attributes:  agent:placeChanged

Filters:

Triggers:

  Key: AGENT   Value: agentId  -  Subscribes on this agent


VoiceMediaEvent

Voice media event on an agent.
Available attributes:  person:*, agent:* except agent:placeChanged, agent:mediaInfo

Filters:

  Key: STATUS_CHANGED   Value: one agent voice media status value.  -  See com.genesyslab.ail.ws.place.VoiceMediaStatus definition

Triggers:

  Key: AGENT   Value: agentId  -  Subscribes on this agent

  Key: PLACE   Value: placeId  -  Subscribes on this place

  Key: DN   Value: dnId  -  Subscribes on this Dn


Interaction SDK
(Web Services)