[Amazon Connect] コンタクトフローをサブルーチン化して使う方法(小ネタ)

2019.07.05

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

1 はじめに

CX事業本部の平内(SIN)です。

Amazon Connect(以下、Connect)のコンタクトフローでは、他のフローへの遷移はできますが、サブルーチンのように、遷移した直後に戻ることはできません。

やりたいのは、こういうサブルーチンみたいな、使い方なのですが・・・・

フローへの転送が、フローの先頭にしか行けないため、こんな悲しい感じになってしまいます。

2 解決方法

結論から言ってしまうと、メインフローの先頭に条件分岐を置いて、サブフローへジャンプした直後に戻ることです。

(1) サブフローで、フロー名を記憶する

サブフローでは、属性に(flowName = SubFlow)を記録しておき、最後にメインフローに転送させます。

(2) メインフローで、条件分岐する

メインフローの先頭で、属性を確認して、ジャンプするブロックを置きます。

これで、無事、サブルーチン(フロー)が実現できます。

3 最後に

やってみれば、つまらないことなのですが・・・恥ずかしながら、サブルーチン化できないことに、結構悩んでいました。

サブルーチンが使用できないと、フローは、常に先頭に突入しても良いように分割する設計が必要ですし、処理を部品化することも難しく感じていました。

なお、属性は、フローを跨いでも、全然、そのまま利用できるので、サブルーチンの戻り値を設定することも 簡単です。