はじめに
Twilio Flexを用いたコールセンターを運用し始めて、営業時間外に留守電音声を流したいという要望がありました
この記事では、Twilio FlexとStudioを利用して営業時間外に着信した場合留守電を流す機能を作る方法について紹介します
やりたいこと
・営業時間は9~20時
・営業時間内に着信があった場合コールセンターへ繋ぐ
・営業時間外に着信があった場合は留守電音声を流す
最終成果物
Twilio Flexを作成した状態で着信時のアクション(Trigger
)とコールセンターへの接続(Send To Flex
)は作成されているので割愛します
今回追加したのは下記の2つのWidgetです
① Say/Play
② Split Based on...
Say/Play
こちらは音声読み上げのSayと音声ファイルの再生のPlayをするためのwidgetです
今回は留守電音声ファイルを再生するので、Playを利用します
Split Based On...
Split Based On...
は条件分岐をするためのwidgetです
評価対象の値( VARIABLE TO TEST
)を指定し、この値の比較条件を設定することで後続の処理を分けます
評価対象の値は Liquid Template
という形で値を埋め込むことが可能で、今回は現在時刻を評価対象とするので 'now' | date: "%H"
を設定しています
(比較条件として is Before Time
などがあるので文字列ではなく時刻を生成できれば、もっとスマートにできるので、どなたかご存知であれば教えて下さい... )
注意すべき点としては、Twilio内部で生成される現在時刻はサンフランシスコ時間になるため、JSTに対して-17時間することで変換する必要があります。
今回の場合20~9時が営業時間外なので、一致する文字列をカンマ区切りで、04,05,...,15
と設定しました
(Twilio Flex内のタイムゾーンをJSTに変える方法があれば、どなたか教えて下さい...)
そして、上記の条件以外の場合は、Flexへ繋ぐ条件を設定したら完成です
その他TIPS
Studio内にあるLogsから実際に通ったフローや詳細な値を確認できます
評価対象の値として利用可能なものやLiquid Templateで評価された値が見ることができるので、非常に便利です
まとめ
Twilio FlexとStudioを使って、営業時間内・外で留守電音声を流すかどうかを分ける方法について紹介しました
Twilioは奥が深いので、まだまだ使い切れてない機能がたくさんある反面、まだまだネット上に情報が少ないので、正しい情報を発信できていない部分があるのでFBをいただけると幸いです