Loop in teammate / agentステップはFin Proceduresのヒューマンインザループ(HITL)機能です。Finが自動化手順の途中で一時停止し、続行前にチームメイトからの入力を求められます。Finが制御を維持しつつ、チームメイトは状況を確認し入力を提供できます。
注意:ヒューマンインザループは既存のFin Procedure内に追加するステップです。手順が初めての場合は、Fin Procedures explainedとQuick start: Create a Fin Procedureを読んでから続行してください。
ヒューマンインザループを使うタイミング
Fin ProceduresのLoop in teammate / agentステップには主に2つの用途があります:
人間の監視
Finが続行する前にチームメイトがレビューし承認する必要があるリスクの高いまたは高価値のアクション向け。例:返金や例外承認、コンプライアンスに敏感なリクエスト(例:アカウント閉鎖、データ削除)、高価値顧客のエスカレーション、善意の対応、またはポリシーで人間の承認が必要な状況。
手順のテスト
まだ構築されていないデータコネクタの代わりに使用。返金やキャンセルのコネクタが開発中の場合、チームメイトが手動でそのステップを実行し、統合準備が整う前に手順全体の流れをテストできます。
ヒューマンインザループの仕組み
1. FinがLoop in teammate / agentステップに到達
Finが手順のLoop in teammate / agentステップに到達したとき:
ステップが実行される前に、Finが顧客に送るメッセージを設定できます。
Loop in teammate / agentのメモがinboxに表示され、チームメイトがレビューし対応するために必要なすべてが示されます。
会話はFinのinboxに残り、人間に引き継がれるわけではありません。
チームメイトが対応するかタイムアウトになるまで、Finは待機し手順を続行しません。
2. チームメイトがレビューし応答
inboxまたはSlackから、チームメイトはFin requires your decisionカードを見て2つの選択肢から選べます:
オプション1:応答を送信(Finが続行): チームメイトは要求されたフィールド(例:決定や理由)を入力して送信します。
その回答は会話に記録されます。
Finは手順を再開します。チームメイトの回答は後続のステップやFinが顧客に送る最終メッセージで使用できます。
オプション2:会話を引き継ぐ(Finが停止): 必要に応じてチームメイトが会話を引き継げます。会話はチームメイトに割り当てられ、Finは応答を停止します。
ヒューマンインザループの設定
手順エディタで@を入力し、メニューからLoop in teammate / agentを選択します。
質問や指示を書く FinはLoop in teammate / agentカードでチームメイトに表示します。チームメイトに伝える内容を簡潔に書いてください。
例:「顧客のプランを年間プロに変更してもいいですか?」 手順の前半でCall data connectorステップが顧客データ(現在のプラン、請求日、アカウント履歴など)を取得していれば、そのデータがカードの質問の下に表示され、チームメイトが判断するための文脈を提供します。
チームメイトが提供すべき情報を設定するにはResponse to Collectフィールドを使います。各フィールドにはデータタイプがあります:承認決定にはTrue/False(例:承認:はい/いいえ)、自由回答にはText(例:理由、メモ)を使います。必須に設定すると、すべての必須フィールドが入力されるまで送信できません。
後続のステップで応答を使う。 Loop in teammate / agentステップの後にRead attributeステップを追加してチームメイトの回答を取得します。その後、IF/ELSE条件で応答に基づき手順を分岐できます。例:承認がTrueならアクションを実行、Falseなら顧客にリクエスト拒否のメッセージを送信。Read attributeステップがないと、Finは後続のステップでチームメイトの入力を参照できません。
レビュアーを割り当てる。 このステップをレビューすべきチームメイトを選択します。空欄の場合、FinはFinの引き継ぎ設定で構成されたDefault担当者を使用します。Mark as priorityでinboxの会話にフラグを立て、チームが優先的に対応できるようにします。
待機時間を設定 — Finがチームメイトの応答を待つ時間を分または時間で設定します。タイムアウト時の会話の所有者も選択し、応答がない場合にFinが顧客に送るエスカレーションメッセージも設定します(例:「まだチームメイトから返答がないため、チームに引き継ぎます。」)。タイムアウトとエスカレーションメッセージの両方が設定されていないと手順は公開できません。
重要:Loop in teammate / agentステップを保存するには少なくとも1つの収集フィールドが必要です。これがないと手順は保存できません。
Slackでヒューマンインザループを使う
Loop in teammate / agentステップ設定のMore channelsタブでSlackチャンネルを接続すると、このステップに到達した際にチームメイトに通知されます。
ステップ設定パネルでMore channelsタブを選択します。
Slackのドロップダウンから通知したいチャンネルを選択します。Slackワークスペースの設定や@Intercomのチャンネル追加についてはSlack通知の設定を参照してください。設定でChannel PurposeをPost Slack notifications onlyにすると、通知はSlackに投稿され、別のIntercom会話は作成されません。
Slack通知には手順名、顧客情報、最近の会話メッセージ、Loop in teammate / agentの質問と、前のデータコネクタステップで取得したデータが表示されます。チームメイトはSlackから直接Respondで回答を送信するか、View in InboxでIntercomの会話を開けます。
チームメイトが対応すると通知は自動で更新されます:
✅ 解決済み:チームメイトの送信した回答が表示され(例:承認:true)、Finは手順を続行します。
⏳ 期限切れ:タイムアウトで応答がない場合、通知に「応答なし。会話はエスカレーションされました。」と表示されます。
複数のチームメイトがSlackとinboxの両方で通知を見た場合、最初に送信された回答が有効です。他の通知は自動的に「解決済み」に更新されます。
他のツールのデータを活用する
Loop in teammate / agentステップは自社システムのデータと組み合わせて使えます。例:
手順の前のステップでデータコネクタを使い、顧客のプラン、支出、リスクスコアを取得することがあります。
その情報はLoop in teammate / agentカードに直接表示され、チームメイトがより迅速かつ的確に判断できます。
同じデータはタイムアウト時の顧客へのエスカレーションメッセージにも表示されます。
タイムアウトとエスカレーション
Loop in teammate / agentステップにタイムアウトを設定すると:
Finはタイムアウトまでチームメイトの応答を待ちます。
タイムアウトまでにチームメイトの応答がなければ、Finはエスカレーションメッセージを送り、自身を会話から外し、設定に従って割り当てます。
注意:待機中の顧客の返信はタイムアウトを延長しません — teammateが行動するまでFinは応答しません。
ヒューマンインザループのテスト
手順エディターでテストをクリックしてテストオプションを開きます。Loop in teammate / agentステップはインタラクティブプレビューまたはシミュレーション実行でテストできます。
プレビュー
手順エディターでテストをクリックし、トリガーフレーズ(例:「請求サイクルを月次から年次に変更したい」)を入力してプレビューを開始します。
顧客ビュー:Finは事前設定されたメッセージ(例:「プラン変更前にteammateに確認が必要です。」)を送信し、Loop in teammate / agentステップで一時停止します。
teammateレビュー:プレビューウィンドウで「レビュー」または「inboxからteammateとしてレビュー」リンクをクリックします。これにより、チームがInboxで見る正確なLoop in teammate / agentカードが開きます。
アクションを完了する:収集フィールド(例:承認/拒否のドロップダウンと理由のテキストフィールド)に入力し、送信をクリックします。
結果を確認する:Finが手順を再開し、決定に基づいた正しいフォローアップメッセージ(例:「良いニュースです!プランは年次請求に正常に変更されました。現在、年間470ドルのPro Yearlyプランで、年間118ドル節約しています。」)を送信することを確認します。
**プレビュー**をユーザーまたはリード設定として使用し、異なる顧客セグメントでの手順の動作をテストします。
シミュレーション
手順にLoop in teammate / agentステップが含まれる場合、シミュレーションフォームにFinが利用可能なteammate入力セクションが表示されます。シミュレーションを実行する前にシミュレーションを編集し、「承認済み:true」などの値を追加する必要があります。
シミュレーションを実行し、Loop in teammate / agentステップに到達したら:
Loop in teammate / agentの質問付きのノートが作成され、teammateが実際の会話で見るのと同じノートが作成されます。
すべての必須値が事前入力済み:Finに「応答が提出されました」ノートが作成され、teammateが応答したかのように手順が続行されます。
必須値が不足している場合:シミュレーションはタイムアウトとして扱い、エスカレーションメッセージが送信され、会話がエスカレートします。これは実際のteammateが時間内に応答しなかった場合と同様です。
割り当てとSLAの動作
Loop in teammate / agentステップ中の割り当て、SLA、teammateの非アクティブ状態の動作は、会話がFinから始まったか人間のteammateから始まったかによって異なります。
ヒューマンインザループの割り当ての仕組み
Finが会話を所有している場合(bot inbox有効)
FinはLoop in teammate / agentステップで設定されたレビューチームまたはteammateに会話を割り当てます。
レビューチームの割り当てルールは通常通り適用されます — ラウンドロビン、負荷分散、または手動。
会話は一時的に人間に割り当てられていても、引き続きbot管理として扱われます。これはSLAの延期やteammateの非アクティブ状態の動作に影響します(下記参照)。
teammateがLoop in teammate / agentフォームを送信すると、会話はFinのbot inboxに戻り、手順が再開されます。
teammateがLoop in teammate / agent中に「引き継ぐ」をクリックした場合
会話は「引き継ぐ」をクリックしたteammateに割り当てられます。
手順は停止し、Finは再開しません。
人間がすでに会話を所有している場合(bot inboxなし)
Finは割り当て前に現在の所有者を記録します。
teammateがLoop in teammate / agentフォームを送信すると、会話は元の割り当て先に戻り、Finには戻りません。
ヒューマンインザループ中のSLAの動作
SLAの動作は2つのワークスペース設定に依存します:bot inboxが有効かどうか、そしてbot inboxのSLA延期がオンかどうか。
Bot inboxオン、SLA延期あり
これはFinが人間のSLAに影響を与えずに動作することを望む場合の推奨設定です。
Loop in teammate / agent中はSLAが延期されます。会話を一時的にteammateに割り当ててもSLAタイマーは開始されず、引き続きbot管理として扱われます。
SLAは恒久的に離脱した時にのみ開始します。タイマーは会話がbot inboxを恒久的に離れた時に開始します — 例えば、Finがエスカレーションした時、teammateが「引き継ぐ」をクリックした時、またはLoop in teammate / agentステップがタイムアウトした時。
Loop in teammate / agent中の手動再割り当てはSLA延期を維持します。teammateがLoop in teammate / agentがアクティブな間に会話を他の人に再割り当てしても、SLAは延期されたままです。
タイムアウトエスカレーションがSLAタイマーを開始します。タイムアウトしたLoop in teammate / agentステップはbot inboxからの恒久的な離脱であり、その時点で延期されたSLAが開始します。
Bot inboxオン、SLA延期なし、またはすでに人間のteammateに割り当てられている会話
これらのすべてのシナリオでは延期はなく、SLAタイマーは適用された瞬間から動作します。
SLAタイマーは適用された時点から動作し、他の会話と同様です。
Loop in teammate / agentの割り当てはSLAの動作を変えません — SLA目的では通常の割り当てと同様に扱われます。
ヒント:手順とLoop in teammate / agentの最適な体験のために、bot inboxを有効にし、「bot inboxにある会話の時間をSLA目標から除外する」をオンにすることをお勧めします。これにより、teammateが引き継ぐまでFinができるだけ多くの作業を行い、人間のSLAを消費せずに済み、teammateが引き継いだ後は既存のSLA動作が維持されます。
ヒューマンインザループ中のteammateの非アクティブ状態
‘teammateが応答していない’workflowsの動作は、会話がFin管理か、すでにteammateに割り当てられているかによって異なります。Loop in teammate / agentステップに到達した時点で。
Finに割り当てられた会話(bot inbox有効)
会話が一時的にteammateにレビューのために割り当てられても、‘teammateが応答していない’workflowsはトリガーされません — 会話は引き続きFin管理と見なされます。
非アクティブワークフローはLoop in teammate / agent中はトリガーされません。会話は引き続きbot管理と見なされるため、‘teammateが応答していない’ルールは発動しません。
非アクティブワークフローは恒久的な離脱後に再開します。会話がbot inboxを恒久的に離れた後、非アクティブ動作は通常に戻ります。
すでにteammateに割り当てられた会話(bot inboxなし)
Loop in teammate / agent に到達しても動作は変わりません — 「teammate has been unresponsive」 workflows はこれまで通りトリガーされます。
シナリオ別の概要
すべての Loop in teammate / agent の結果における SLA、teammate の非アクティブ状態、および割り当ての動作は次の通りです。
シナリオ | SLA の動作 | teammate の非アクティブ状態 | Loop in teammate / agent 応答後の割り当て |
Bot inbox 有効、SLA は延期される | 延期 — SLA は開始されない | Loop in teammate / agent 中は抑制される | Fin(bot inbox)に戻る |
Bot inbox 有効、SLA は延期されない | SLA は通常通り実行される | Loop in teammate / agent 中は抑制される | Fin(bot inbox)に戻る |
Bot inbox なし | SLA は通常通り実行される | 通常通りトリガーされる | 元の人間の担当者に戻る |
Loop in teammate / agent タイムアウト(任意の設定) | SLA 開始 — Fin からの恒久的な退出 | 通常通りトリガーされる | Loop in teammate / agent ステップのエスカレーションルールに従いエスカレーションされる |
teammate が「引き継ぐ」をクリックする | SLA 開始 — Fin からの恒久的な退出 | 通常通りトリガーされる | 引き継いだ teammate に割り当てられる |
解決状態
シナリオ | 解決状態 | 次に起こること |
teammate が時間内に応答する | 通常の解決 | Fin は一時停止した手順の続きから実行を続ける。 |
teammate が会話を引き継ぐ | 想定解決 | Fin は停止する。会話は teammate に割り当てられ、人間の会話として続行される。 |
タイムアウト内に teammate の応答なし | 引き継ぎ / エスカレーション | Fin は停止する。エスカレーションメッセージが顧客に送信され、会話はエスカレーション設定に従ってルーティングされる。 |
Loop in teammate / agent とチームへの手順引き継ぎの比較
これら二つの機能は似ているように見えますが、動作は異なります:
チームへの引き継ぎ: Fin は応答を停止し、その時点から teammate が会話全体を引き継ぎます。
Loop in teammate / agent: Fin は一時停止し、teammate の入力や判断を待ってから手順を再開します。teammate は貢献しますが、引き継ぎはしません。
顧客の視点からは、Loop in teammate / agent は見えません — 会話は中断されずに続きます。
















