Ticketing suggestion logic -
Factors | Area | What | Examples | Notes |
Agent's type | Agents | Matching | Intermediate, Super-agents | According to the user's tier |
Agent's kind | Agents | Matching | Real, Test | Not in use as a filter |
Agent's certification | Agents | Matching | Classification, Complete purchase, Rating | |
Online status | Agents | Matching | PresenceStatus = Online / Offline | Only online agents will get a suggestion |
Availability | Agents | Matching | IsOpenForNewTasks = true | Agents that are not responsive will move to be false |
Assignment status of the agent | Agents, Tickets | Matching | Assigned, Unassgined | Only unassigned agents will get a suggestion |
Assignment status of the ticket | Agents, Tickets | Matching | tickets.agentId | |
Task's type | Tasks | Matching | Assessment, Synthetic, Regular | |
Task's status | Tasks | Creation | New, Open, Waiting for user, Completed | |
Ticket's type | Tickets | Matching | Classification, Complete purchase, Rating | |
Ticket's suggestion time | Tickets | Matching | ticket_suggestion_ttl_minuites | After X time, the ticket would be suggested to all other agent's types |
Tickets order | Tickets | Prioritiy for the agent | tickets_order_weights | |
Ticket creation time | Tickets | Prioritiy for the agent | createdAt | |
User's tier | Users | Suggestion | Intermediate, Super-agents | Determines the agent's type |
User's kind | Users | Suggestion | Real, Test | Not in use as a filter |
https://docs.google.com/spreadsheets/d/1rmBeh_ArUtnkh6TsNkHSXFKWraJDmEddEB134u9GUL0/edit#gid=0
Assignment logic -
Step | Trigger | Who should be assigned | Status | What if no one accepts the task |
Classify | New request from a user | Suggested to COSs with "Classification" certification | New requests ---> Open | Auto-assigned to Online AM's |
Waiting for the user | User replied | Suggested to COS | Waiting for user---> Open | Auto-assigned to Online AM's |
User was online and replied when the questions were asked | Stays in the COS' queue | Open | Not relevent | |
Purchase | User selected one of the options | Suggested to COSs with "Purchase" certification | Waiting for user ---> Open | Auto-assigned to Online AM's |
COS clicked on "Need help with the purchase" | Suggested to COSs with "Purchase" certification | Open | Auto-assigned to Online AM's | |
Waiting for 3rd party | Snooze time is over, after a COS snoozed it | Suggested to COSs | Waiting for 3rd party ---> Open | Auto-assigned to Online AM's |
Snooze time is over, after an AM snoozed it | Stays in the AM queue | Waiting for 3rd party ---> Open | Not relevent | |
Snooze time is not over, but the user sent a new message (when the task was snoozed by COS) | Suggested to COSs | Waiting for 3rd party ---> Open | Auto-assigned to Online AM's | |
Snooze time is not over, but the user sent a new message (when the task was snoozed by AM) | Stays in the AM queue | Waiting for 3rd party ---> Open | Not relevent | |
Completed / closed task | User sends a new message to a closed / completed task | Suggested to COSs with "Classification" certification | Completed / closed ---> Open | Auto-assigned to Online AM's |
Complicated task | User clicks on "Not in my skill's set" button | Auto-assigned to Online AM's | Open | Not relevent |
https://docs.google.com/spreadsheets/d/10uH2bBDqoZAGhjWs0NJt1kTt_m93Vryj3YpLqxXCnU4/edit#gid=0