プロジェクト概要
コールセンターのオペレーター向けに、顧客属性・契約状況に応じた最適なトークスクリプトをリアルタイムで動的生成するシステム。 入居者の物件情報・契約プラン・地域特性などの条件に基づき、案内すべき内容を自動で分岐・構成し、オペレーターの画面に3カラムレイアウトで表示する。 属人的な判断や暗記に頼らず、誰でも正確で一貫した案内ができる環境を実現。
5つの主要機能
条件分岐型トークスクリプト
顧客の回答や属性に応じてトークの流れが動的に分岐。TalkGroup・Talk・ConditionBranchオブジェクトの組み合わせにより、複雑な案内パターンを柔軟に定義・実行。
リアルタイム3カラムUI
通話中に「入居者情報」「トークスクリプト」「メモ・一時データ」を同時表示するモーダル型インターフェース。オペレーターが画面遷移なしで必要な情報にアクセスできる。
サービスガイド自動選択
物件の電力エリア・ガス供給エリア・契約種別などの条件から、案内すべきサービス(電気・ガス・水道・インターネット等)を自動判定。GuidanceRulesオブジェクトで案内ルールを一元管理。
一時データ管理・引き継ぎ
通話中に入力した一時データ(確認事項・特記メモ等)をリアルタイムで保存し、通話終了後にSalesforceの顧客レコードへ自動反映。途中離脱や引き継ぎにも対応。
案内対応ルールエンジン
カテゴリ・対象チーム・ステータスに基づく案内ルールを管理。確認済み/未確認のトラッキングにより、案内漏れを防止する仕組みを実装。
技術スタック
- フロントエンド:javascript
- バックエンド:Salesforce (Apex Controller)
- ロジック制御:条件分岐エンジン
- 開発ツール:Claude Code
技術的チャレンジ
複雑な条件分岐の動的評価
顧客属性・契約情報・地域条件を組み合わせた多段階の条件分岐をリアルタイムで評価し、適切なトークパスを決定するロジックを設計。
コンポーネント間のリアルタイム状態管理
複数の子コンポーネント間でデータを同期し、通話フロー全体の状態を一貫して管理する仕組みを構築。
柔軟なルール定義と保守性の両立
業務担当者がノーコードで案内ルールを追加・変更できるようにしながら、開発側の複雑さを抑えるデータモデルと設計を実現。
通話中のパフォーマンス確保
通話しながらリアルタイムで条件評価やUI更新を行うため、クエリの最適化とコンポーネントの効率的なレンダリング設計が不可欠。
社会貢献・意義
ライフラインの案内業務は、電力エリア・ガス供給区域・物件種別など考慮すべき条件が膨大で、ベテランでも案内ミスが起きうる領域だった。
本システムにより、入社直後のオペレーターでもベテラン同等の正確な案内が可能になり、案内品質の均一化と研修期間の大幅短縮を実現。
顧客にとっても、正確で漏れのない案内により、新生活の立ち上げがスムーズになった。
エンジニアにとっての魅力
アーキテクチャの実践
リアルタイムインタラクティブUIの設計・実装を通じて、Salesforceプラットフォーム上でのモダンフロントエンド開発を経験できます。
ルールエンジン設計
条件分岐や動的評価といった汎用性の高いアーキテクチャパターンを設計する経験を通じて、他のドメインにも応用可能なスキルを習得できます。
業務ドメインの深い理解
ライフライン手続きという複雑な業務ルールをシステムに落とし込むプロセスに関わり、要件定義から実装まで一貫して携わることができます。
技術選定の自由
「No Restrictions」方針のもと、目的達成に最適な技術を自ら選定し、提案できる環境があります。