Every Call Center is in fact unique, but the all share a common theme that can be encoded for recreating deployments quickly. Generally we divide Contact flows up into manageable contact flows that compartmentalize call handling. For example we generally create a MainGreeting, QueueHandling and After hours Call Handling call flow and these three basic contact flow blocks provide some very powerful options!
Generally, we attach the incoming phone number to the MainGreeting Contact flow. This flow is very important as we use it to setup all the required variables required for whatever CSQ this greeting will front end. This contact flow will usually perform the following:
- Set the voice to use for Polly based prompts
- Enable Logging behavior
- Enable Call Recording behavior
- Set Agent Hold Behavior
- Set Customer Hold Behavior
- Set the Queue Hold Behavior
- Set the Customer Queue
- Set the whisper behavior
- Set the Working CSQ
- Invoke Lambda function to check for special closing
- Check Operating hours
- Prompt and Collect Caller Input
- Transfer to Flow or Queue as required
These are all critical parts of the overall call flow and set the stage for call handling throughout the rest of this callers experience. Not burdening the the contact flow with all the queue options while awaiting connection with an agent, makes the flow more manageable!
If the caller can not immediately be routed to the next available agent, they are passed into the contact flow that describes the experience the caller has while waiting including the presentation of any options the caller might elect to initiate while holding.
We will cover the Queue Hold options in the next post!