The calls in the queue are sorted client-wide by Priority and dtCallStart, and viewed from top to bottom, one after the other.

jtel has several status fields, all of which together determine whether an agent is suitable for a particular call:

Field

Meaning

AgentenStatusID

ID of the status an agent is in. Must be marked with "Calls" in order for the agent to be considered for call distribution.

dtLastCall

Timestamp, is set in the future with automatic postprocessing. Must be <= current time.

dtEarliestRedial

Timestamp, is set if a delay is configured in the ACD group in case of busy or no response. Must be <= current time.

TelStatus

Status of the phone, according to jtel ACD. Set to 2 (ringing) or 1 (busy) by the ACD. Must be 0 (free) for the call to be distributed to an agent

PBXTelStatus

Status according to TC connector. If TelStatus corresponds to values, must be 0.

TransactionCodeMandatoryStatisticsPartAID

Logs the last call if TAC forced capture is active. Must be 0 or NULL.

DiallerContactsHistoryID

For dialers: last contact for which a result is still pending. Must be 0 or NULL.

Additional Skills (SkillsID1, SkillsID2, SkillsID3)

Agent must have the skill, with the corresponding bandwidth (from / to)

Looged in Group (bLoggedInGroup)

Agent must be logged into group.

If all conditions are met, the agent is eligible for this call.

Of all Agents elligible:

  • The Last-Agent searched, he gets the call if available
  • Then:
    • Sorted by skill (for skill-based distribution), and the top one is used
    • Sorted by dtLastCall (for Longest Idle distribution), and the oldest is used
    • Or according to the sorting according to another distribution algorithm, the topmost agent from the list is used

The determined agent is assigned the call (TelStatus is set to 2 so that he remains busy according to the ACD), then the next call is calculated in the (client-wide) queue.

This procedure is calculated once per client per second.

  • No labels