Wednesday, June 15, 2011

Call Lists: Customizing

When implementing call lists, there is some customization to be done.

SAP Customizing Implementation Guide -> Customer Relationship Management -> Interaction Center WebClient -> Additional Functions -> Call Lists
  1. Define call list types
  2. Define a call list dispatcher
  3. Define actions
  4. Define Call list Synchronisation
  5. Add call list maintenance to the IC Manager Role
  6. Add call list execution to the IC Agent Role
Call list types
A call list type is the group of settings like call list dispatcher, rescheduling component etc. Every call list will be assigned to a call list type.

Define the call list dispatcher
The call list dispatcher allows you to automatically assign the next call from a call list to an available agent. When using a call list dispatcher, agents will not have to choose themselves which customer from the list is first to be selected.
The call list dispatcher also decides which customer is to be called first based on the ordering rules you have maintained.
In the call list dispatcher you are also able to for instance decide that a customer should only get one attempt per day.

Define Actions
In a standard scenario, you will be creating calls in the call list which are connected to an activity. The call will be used in the call list (for dispatching, monitoring, scheduling reasons), and the activity will be used to record the outcome of the call in the customer overview.
In order to keep the status of both objects in sync, you should assign an action to the activity that is used as the connected activity. Unless you want more actions to be available on the activity, you can easily use the standard action definition CL_TM_CLM_INTERACTION. Otherwise, make a copy and keep the standard part as it is.

The method to be called is CRM_CLM_BTX_SYNC.
The action will be triggered every time the activity is saved, and will update the status of the linked call immediately. Once finished, a new one will be scheduled the next time a user goes into change mode in the activity. This was, when the status is updated from the customer master (for instanca after an inbound call), the call in the call list will automatically be updated accordingly.

Call list synchronization
As call list synchronization works both ways, when the call status is changed, the activity status also changes. How one works the other is maintained in the Call State Mapping Profile.

In the call, there are 6 possible states:
  • C – Created -> New Call
  • L – Locked -> Call has been selected by an agent
  • R – Ready -> Call is ready to be selected by an agent
  • I – Initiated -> State between Ready and Locked (lock availability is checked)
  • E – Executing -> Call is in process
  • C – Completed -> Call was successful, no further action on this call
In the activity, you can have multiple statuses. I suggest to keep them somewhat in line.

There is no need to map state C (Created) and I (Initiated) to an activity status, because Created is the same as the initial status, and the Initiated state is a technical state that does not need to be synced to the activity (as it is only set for a fraction of a second).

The standard contains the following mapping:

This looks ok, except that I would not consider a Locked call to be Rejected. I would suggest changing the mapping to something like ‘Selected’.
Make sure in the activity status schema, that the status transitions between these statuses are possible.
We have now seen the mapping from the call to the activity, but from the activity to the call (as handled by the previously mentioned action), is also maintained here.

Add Call list Maintenance to the IC Manager Role.
In order to be able to create call lists and assign them to agents or agent groups, the functionality should be switched on in the Nav bar profile and in the businessrole of your IC Manager role.
Logical Link IC-CLM-SR

Add Call list execution to the IC Agent Role.
In order to be able to work on call lists, the IC Agent role should be updated with the call list functionality.