T-Server distinguishes between two situations for the Account Code feature:
- Account codes that are entered during a call, or during After-Call Work (ACW) when the released call is left, are treated as account codes.
- Account codes that are entered while the agent is idle are interpreted as walk-away codes.
Any account codes entered during a call are treated by T-Server as call account codes. T-Server reports such account codes using attached user-data with configurable keys. Optionally, T-Server can report an account code as an Extensions attribute key, instead of an UserData attribute key, to minimize interference with the other components, such as ISCC and other user applications.
While Call Concentrator can pick up Extensions attribute events, the same as the UserData attribute, Stat Server can only work with the UserData.
Indexing by Key Name
In scenarios where multiple account codes are required, it is possible to turn on key name indexing. When indexing is enabled, T-Server should attach each subsequent account code and increment the index part of the key.
The index is an incremental integer attached to the configured key name after an underscore, starting with 1—for example: AccountCode_1, AccountCode_2, and so on). T-Server only attaches unique codes that are not yet attached. T-Server keeps non-indexed key—for example: AccountCode, updated with the last received value irrespective of whether indexing is enabled or not.
In case multiple calls exist on the device, T-Server attaches the code to the last active call. For this reason, T-Server has to keep a historically ordered stack of active calls on the device so that last active call can be easily and reliably identified.
The data key name is set by the configuration option, accode-name. If the configured name is different from AccountCode, then the name for multiple account codes is also changed and represented as "<value of "accode-name">_<N>".