New features



Distribution Console - queue levels

New Queues sub-tab added to Distribution Console. This shows the queue levels for each distributor - total and available (determined by filter criteria)

Distribution Console - team/team member coverage

New Availability sub-tab added to Distribution Console. This calendar display feature shows coverage by team and by selected tags. E.g. show availability this week of Spanish language speakers within a team.

Distribution Team - shift patterns

Rather than creating and maintaining unique distribution hours for multiple teams and team members its now possible to create and re-use shift patterns.

Distribution Team - allow selection of objects from other managed packages

Previously when creating a team the list of objects that could be selected excluded objects from installed managed packages. It is now possible to access objects from other packages by selecting a checkbox.

Distribution Team - add / remove team member UI updates

  • Team member search now queries all salesforce users rather than a purely front end filter of users currently displayed.
  • Current licence count is displayed to show how many users can be added.
  • Pagination added for customers with high volume of users.

Distribution Team - team detail. Distribution logging option 

New checkbox added to team detail page to disable Distribution Logging for a team. This is designed to avoid generating large amounts of logs for teams dealing with high volumes e.g. queue to queue distribution teams. 

Distributor filters, additional field types allowed

It is now possible to use Email, Date and DateTime type fields on distributor filters.

Distributor algorithms - weighted distribution as an option

Weightings removed as an algorithm and added as a checkbox. This enables you to select weighted assignment in addition to the main algorithm (round robin, sticky assignment etc)

Distributor testing tool

From a distributor you can click test and enter a salesforce record Id e.g. Lead Id in order to check why certain Leads / Cases are not being assigned (also accessible from the Queues tab on the console).

Configuration change history

A new history features tracks changes made to Distribution Engine configuration. History tracking has been added to Team, Team member, Distributor and Holiday regions. This is visible at the bottom of each page where history is tracked.

Distribution OoO - All-team calendar view

Calendar view now shows OoO entries for a whole team

Distribution logs - status on assignment

The status on assignment has been added to logs. For example the status of a Lead as it was assigned by DE.

Distribution logs - show sticky & lookup matches

Icons added to distribution logs to show if this was a sticky or lookup owner matched assignment.

Distribution settings - minor UI updates

  • Changes to the way you set the frequency of the Distribution Engine scheduler. We are gently encouraging customers to use frequency of 5 minutes or higher in order to fit in with general advice from Salesforce on making the best use of the platform.
  • Health checker now starts automatically whenever you start Distribution Engine scheduler. Health checker is an important part of DE so we encourage customers to always have this running.
  • Settings added to control the new history feature. This tracks configuration changes with Distribution Engine setup.

Distribution settings - view licensed users

New page shows all licensed users, this is accessible from the Distribution Settings tab.

Distribution Engine API methods

The Distribution Engine managed package includes DistributionEngineGlobal class which call be called by customers wanting to write integrations with Distribution Engine. 2 new methods have been added to this API.

  • getUserAvailabilityAllTeams returns a list of all teams and their members with availability status
  • getAvailabilityByUser returns a list of all teams this user belongs to with availability status


Defects resolved



Distribution Engine aborting on large team numbers

It was possible for Distribution Engine scheduler to hit Salesforce limits and abort. This issue would only affect customers with large numbers of teams. The Distribution Engine includes an internal calculator to determine current and future resource usage. There was a discrepancy in this calculation which has now been resolved.

Distribution logs not showing after custom object deleted

If a custom object was being distributed then subsequently deleted, the Distribution Logs page showed an error. This has now been resolved.

Sticky assignment team/distributor level bug

The sticky assignment algorithm could in certain situations fail to correctly respect the team / distributor level setting. This has now been resolved.

Locking issues    

Conflicts can sometimes arise where Distribution Engine and a user are both accessing the same data. This causes a locking exception. Retries have now been added to combat this and give Distribution Engine a chance try again by which time the conflict will in most cases have gone.

Stop queue assignment lead & case field updates

Stop update of DE lead and case fields (i.e. Is Distributed, Last distributed… etc) on distributions by queue based teams.

Distributor filter logic bug in distributor detail

Incorrect soql string built when using filter logic and where a filter argument contains a number.

Availability for queues on Console bug

Availability status correct for queue based teams

Records created after run has started should be ignored

If a record is created after a DE scheduled run has started, it could be missed by an earlier distributor but picked up later, so result in being distributed by wrong distributor. This has now been corrected so that records created after the run has started are ignored.

Trim 'in' operator arguments for string field on distributor filter

Additional whitespace in the "in" operator for text fields prevented it finding matches. Whitespace is now trimmed automatically

After deleting a field used in a filter can't open a distributor to change or delete it.

Deleting a field which is being used by a distributor causes an exception on the distributor detail page. This is now resolved.


How did we do?