A fact is a numerical piece of data, which in a business environment is used to measure a business process. Values can be arbitrary.
Service Sessions
Service Session facts are created when conversation stays in one context of the system. The Service Session is terminated when ... :
- ... the Customer hangs up a call.
- ... the Service terminates the task or transfers call to another service.
Fact table grains below are considered finalized when the session ended.
Attribute | Data Type | Category | Description |
---|---|---|---|
Id | guid | Primary Key | Primary key |
ServiceId | guid | Reference | Reference to Service |
UnifiedConversationId | guid | Reference | Reference to Unified session. Unified session can contain several Service sessions. |
ServiceOrganizationUnitId | guid | Reference | Organization Unit ID of the service (TeamId) |
OrganizationUnitId | guid | Reference | Parent Organization Unit ID of the service (ParentId) |
OutcomeId | integer | References | Reference to Service Session Outcomes |
StartedAt | datetime | Session start timestamp | |
TotalQueueTime | integer | measure | Queue time summary |
TotalIvrTime | integer | measure | IVR time summary |
TotalConnectedTime | integer | measure | Connected with user time summary |
HoldTime | integer | measure | Hold time summary per session. Time when a customer was "on hold" during consult sessions. Park attempts are not included. |
HoldCount | integer | measure | Hold count summary per session. How often a customer was put "on hold" during consult sessions. Park attempts are not included. |
IsUnderSla | boolean | Degenerate dimension | If Time in queue is less SLA time of this service |
DistributionPolicyLevel | integer | Degenerate dimension | Profile level. In which distribution profile the user was selected (1, 2, 3... ) |
DistributionAlgorithm | integer | References | Reference to Distribution Algorithm |
AcwTime | integer | measure | Duration of after conversation work |
CallerId | guid | Reference | Reference to Callers |
TenantId | guid | Degenerate dimension | Unique Tenant identifier |
FirstPrimaryCodeId | guid | References | Reference to Primary Code |
FirstSecondaryCodeId | guid | References | Reference to Secondary Code |
DistributionPriority | integer | Reference | Reference to DistributionPriority |
TaskTypeId | integer | Reference | Reference to task type |
LastTransferDestination | string | Reference | UPN or PSTN of transfer destination, which leads to the termination of the Service session (Successful or Failed) |
LastTransferTypeId | guid | Reference | Transfer type id of the transfer, which leads to the termination of the Service session (Successful or Failed) |
IsShortConversation | boolean | Degenerate Dimension | Flag (True/False) indicating whether the call is within the Short Abandons Threshold as set for the service in the Nimbus General Service Settings > Reporting section > Short Abandons Threshold. |
🔍 Fields below are not provided by OData feed, but calculated in Power BI template | |||
InitialCallerId | text | Calculated Column | Renamed column CallerId |
O365Id | guid | Degenerate dimension | Lookup value from Callers |
Upn | text | Degenerate dimension | Lookup value from Callers |
TelNumber | text | Degenerate dimension | Lookup value from Callers |
TotalTime |
integer | Calculated Column | Calculated: TotalQueueTime + TotalIvrTime + TotalConnectedTime |
LocalTime |
integer | Calculated Column | StartedAt shifted to local timezone of the system |
Date |
date | Calculated Column | Date part of LocalTime |
Time |
time | Calculated Column | Time part of LocalTime |
Hours |
integer | Calculated Column | Hours extracted from Time |
Minutes |
integer | Calculated Column | Minutes extracted from Time |
Fixed15Min |
text | Calculated Column | Time rounded to the 15 minutes timeslot e.g. 11:15:00, 11:30:00 |
OriginType | text | Calculated Column | PSTN/INTL |
Tags | text | Calculated Column | Comma separated string of tags |
Service Session Tags
Used to connect service sessions table to their tags.
Attribute |
Data Type |
Description |
---|---|---|
ServiceSessionId | guid | Service session primary key |
TagId | guid | Tag primary key |
Transfer Sessions
Attribute |
Data Type |
Category |
Description |
---|---|---|---|
Id | guid | Primary Key | Primary key |
ServiceSessionIDFrom | guid | Reference | Id to the related Service Session from which the transfer was started |
UserSessionIdFrom | guid | Reference | null |
ServiceFromOrganizationUnitId | guid | Reference | Contains parent → OrganizationUnitIdof the service, from which transfer was started |
ServiceToOrganizationUnitId | guid | Reference | Contains parent → OrganizationUnitIdof the service, to which transfer was started |
UserFromOrganizationUnitId | guid | Reference | Contains source organization unit of → user which started the transfer. |
UserToOrganizationUnitId | guid | Reference | Contains destination organization unit of → user which started the transfer. |
StartedAt | datetime | measure | transfer started at timestamp |
EndedAt | datetime | measure | transfer ended at timestamp |
ServiceIdFrom | guid | Reference |
if the transfer was initiated by a Nimbus Service, the ID will be added here 💡 will always be not null for transfer by Workflows. |
UserIdFrom | guid | Reference | null |
ServiceIdTo | guid | Reference | Destination Service Id |
UserIdTo | guid | Reference | null |
Destination | text | Reference | transfer destination ( PSTN number or UPN) |
TransferSessionOutcomeId | integer | Reference |
Filled accoring to TransferSessionOutcome 🔍 see → Static Dimensions > Transfer Session tab |
TransferTypeId | integer | Reference |
Filled accoring to TransferSessionType see → Static Dimensions > Transfer Session tab |
UserTransferActionTypeId | guid | Reference | null |
TenantId | guid | Reference | Tenant Id |
User Sessions
User Sessions are used to assess user performance. User Sessions are a sub process of Service Sessions and are always related to only one User.
- A session is created for accepted, missed and declined user conversations.
- With several users in a conversation, User Sessions are created for each User.
Multiple user sessions may be created (e.g. when a user transfers a call to another user in the same service).
Attribute | Data Type | Category | Description |
---|---|---|---|
Id | guid | Primary Key | Primary key |
UserId | guid | Reference | Reference to user slowly changing dimension |
UnifiedConversationId | guid | Reference | Reference to Unified session. Unified session can contain several Service sessions. |
TenantId | guid | Reference | Unique Tenant identifier. |
OrganizationUnitId | guid | Reference | Organization Unit ID of the user. |
OutcomeId | integer | Reference | Reference to User Session Outcomes static dimension |
UserSelectedAt | datetime | measure | User selected at timestamp |
RingTime | integer | measure | Ring time summary. The time invitation card was shown to this Nimbus user for the Handled attempt (i.e. Declined and RONA attempts should be ignored) for the selected period. Average time customer is connected this Nimbus user (applicable to Accepted calls excluding PickupThroughTransfer) for the selected period |
ConnectedTime | integer | measure | Connected time summary |
ConferencedTime | integer | measure | Total time user spend in conference with customer and consultant |
ConsultationTime | integer | measure | Total time user spend in conference with consultant only (customer on hold) |
ConsultationCount | integer | measure | Count of consultations during the user session |
ServiceSessionId | guid | Reference | Reference to Service Sessions fact |
AcwTime | integer | measure | Duration of after conversation work |
DistirbutionAlgorithm | integer | Reference | Reference to Distribution Algorithm |
DistributionPolicyLevel | integer | Reference | Profile level. In which distribution profile the user was selected (1, 2, 3... ) |
DistributionTypeId | integer | Reference | In which way the task was sent to the user. Broadcast, DirectConference etc. |
DistributionPriority | integer | Reference | Reference to UserSessionDistributionPriority |
TaskTypeId | integer | Reference | Reference to task type |
LastTransferDestination | string | Reference | UPN or PSTN of transfer destination, which leads to the termination of the User session (Successful or Failed) |
LastTransferTypeId | guid | Reference | Transfer type id of the transfer, which leads to the termination of the User session (Successful or Failed) |
Fields below are not provided by OData feed, but calculated in Power BI template | |||
LocalTime |
datetime | Calculated column | UserSelectedAt shifted to local time zone, defined by parameter |
Date |
date | Calculated column | Date part of LocalTime |
Time |
time | Calculated column | Time part of LocalTime |
Hours |
integer | Calculated column | Hours extracted from Time |
Minutes |
integer | Calculated column | Minutes extracted from Time |
Fixed15Min |
text | Calculated column | Time rounded to the 15 minutes timeslot e.g. 11:15:00, 11:30:00 |
User States
User states is a list of periods in time showing durations and user responsibility profile during this period.
Attribute | Data Type | Category | Description |
---|---|---|---|
Id | guid | Primary Key | Primary key |
TenantId | guid | Reference | Reference to Tenant table |
UserO365Id | guid | Reference | Reference to user slowly changing dimension |
ResponsibilityProfileId | guid | Reference | Reference to Responsibility Profile dimension |
NotAvailableReasonId | guid | Reference | Reference to NotAvailableReasons dimension |
NotAvailableReasonComment | text | Reference | Comment which is added by User for NAR |
Start | datetime | measure | Period start time |
End | datetime | measure | Period end time |
UserStateTypeId | guid | measure | Reference to User State Type dimension |
Fields below are not provided by OData feed, but calculated in Power BI template | |||
PeriodLength |
text | Calculated column | Represent Period Length as dd.HH:MM:SS.XXXXXXX formated string |
🔍 Also refer to User States.
UnifiedSessions
UnifiedSessions - 🔍 this is a virtual table which is built on Power BI side for now in oder to generate a "Unified Sessions" data tab for the Template.
- Service sessions are grouped by UnifiedConversationId column, durations (time in queue, IVR etc.) are summarized.
- Service Sessions are ordered by StartedAt .
- The customer path is combined from Service names based on ordered sessions.
- Most of attributes for Unified session are taken from the first service session (Caller, Date, Time). The outcome is taken from the last session.
- If there was only one session per call, then UnifiedConversationId is equal to Service Session Id.
- HighestDistributionPriority represents distribution priority among Service sessions with same UnifiedConversationId. The lower the DistributionPriorityId the higher the priority.
☝Performance Impact: Generation of Unified sessions in Power BI using the Nimbus Power BI Template can be very resource and time consuming even on high-end PCs. For this reason, a toggle in the template can be disabled.