SIGN UP

Better ACD operator status handling

Better ACD operator status handling

As you might know, there is an ACD module in our platform. It represents the call queues functionality, which implies the creation of call centers. It is partly true because the ACD module can be used to build a simple call center within half an hour but it's not appropriate for complex cases with an advanced custom logic. Still, ACD has its application as a reliable call distribution mechanism.

The ACD module deals with the Queue concept. The calls are served by operators, which could have various statuses: Ready, DND (do-not-disturb), Online, Offline, etc. We're glad to introduce new ways of processing statuses with Web SDK and HTTP API.

Web SDK: getOperatorACDStatus method

The Client class now has a brand new method – getOperatorACDStatus. It allows to retrieve the user's status if the user has already been assigned to any ACD queue, just call the method and wait for the resolved promise.

// SDK initializing and connecting to the cloud

var vox = VoxImplant.getInstance();
vox.init({micRequired: true});
vox.addEventListener(VoxImplant.Events.SDKReady, function() {
  vox.connect();
});

// your call distribution logic

vox.getOperatorACDStatus().then((status) => {
  if (status !== VoxImplant.OperatorACDStatuses.Ready) {
    vox.setOperatorACDStatus(VoxImplant.OperatorACDStatuses.Ready);
  }
});

Web SDK: ACDStatusUpdated event

Additionally, you can track the fact of status' changing via the ACDStatusUpdated event. The event is triggered when the ACD operator status is changed due to the setOperatorACDStatus call (on any SDK logged in under that user) or due to a server-side event (the operator is banned because of a missed call).

vox.addEventListener(VoxImplant.Events.ACDStatusUpdated, () => {
  vox.getOperatorACDStatus().then((status) => {
    if (status !== VoxImplant.OperatorACDStatuses.Ready) {
      vox.setOperatorACDStatus(VoxImplant.OperatorACDStatuses.Ready);
    }
  });
});

HTTP API: /GetUsers method

The acd_status field of the UserInfoType structure returned by the /GetUsers method call now contains an up-to-date value of the current user's ACD status as a string. Previously it was possible for a 20-30 seconds old status to be returned.

'BANNED' can now be retrieved

Voximplant ACD module automatically sets 2-hour 'BANNED' status if an operator does not answer a call. Now that status can be received via both the /GetUsers method and the getOperatorACDStatus method.

Tags:call centeracd
B6A24216-9891-45D1-9D1D-E7359CEB8282 Created with sketchtool.

Comments(0)

Add your comment

Please complete this field.

Recommended

Get your free developer account or talk with our sales team to learn more about Voximplant solutions
SIGN UP