As I mentioned in my introductory post, Flex offers a lot of new areas to explore as we think specifically about text-based communication channels.
In this post, we’ll look at the first focus area…
How does the customer engage in the communication or how does the customer start talking to me?
“I Want To Talk To You….”
There are many ways a communication between your company and a customer can begin, such as an agent reaching out, a marketing campaign or follow-up messaging. For the purposes of this discussion, we’re going to assume the customer is starting the communication with your company. This may be the very first time the customer has reached out or it may just be one in an ongoing series of interactions.
There are a number of native text-based channels in Flex and more are coming. You can also create your own using standard API-driven patterns.
Types of Channels
Typically channels fall into a couple of main categories:
Phone number based – SMS, WhatsApp, Line, etc. Email would be a type of this, except using email address as the contact point instead of a phone number.
Application based – web chat, Facebook Messenger, a custom mobile implementation, etc.
Good UX Means Good Business
In a world where technology is rapidly advancing and user expectations are rising, it’s no longer enough to have an average user experience; to delight your users and surpass your competition you must strive for the exceptional.
In the first type, your ability to customize or shape how a customer starts communication with you is somewhat limited. For instance, in the case of SMS or WhatsApp, you really can’t do much more than publish the enabled number(s). That being said, you might be able to have different numbers for different intents or campaigns and the Twilio platform makes this fairly straight-forward.
For the second type such as a channel like web chat, you can control the user experience (UX) a bit more since you are probably hosting that experience on your web site. If you are enabling messaging in your own mobile app, the possibilities are really only limited by your imagination.
For instance, you could think about pushing behavior normally reserved for the IVR out to the app. Examples include determining the customer intent with a high degree of accuracy, gathering context (this customer was looking at this account or browsing these products) or simply asking the customer what type of help they need (support, product information, order tracking, sales) right in the app before sending to Flex.
In both cases, once you have established an interaction with the customer your options start to become more consistent. All of these interactions can be routed to a Studio Flow and you can use the same Flow or similar logic across channels in a consistent fashion.
In particular, the outbound messaging itself can be treated in a very standard fashion. Here are just a few examples:
- Greet the custom in a consistent fashion. Modify that greeting based on business hours, wait times and other considerations as needed.
- Begin the interaction using a bot or digital assistant. Help the customer resolve their question or issue more quickly through the use of self-service options.
- Look up the customer in your CRM, issue tracking, profile and/or order system. Provide more personalized responses from the beginning or context if routed to an agent.
This is where the consistent use of Twilio Programmable Chat to drive all of these different text-based chat channel interactions really starts to shine. Once the customer contacts you, you can implement, manage and report on those interactions in the same way regardless of actual channel type. Or customize based on channel type if you wish. It’s up to you.
In addition, the rich event system and web hook options for Chat Channels provide a maintainable modern platform for interacting with customers at scale, using whatever cloud platform or patterns you prefer.
Report on text-based channels as a whole and then break them down by channel, using the historic reporting built into Flex or your own custom metrics.
Next we’ll take a peek under the covers and get slightly more technical as we look at routing and orchestration. How do all these different types of channels converge on a similar flow in the Flex framework? How does Flex treat these different channel types the same and how do they differ?