ケーブルテレビ局に届く視聴・インターネットの不具合の問い合わせを、症状と地域で分け、遠隔・訪問・障害対応へ振り分ける
ケーブルテレビ局に届く「映らない」「ネットがつながらない」の問い合わせを、症状の区分に分け、加入者の住所から伝送路の系統を引いて、遠隔・訪問・障害対応のどこへ回すかの案を出します。
- 生成AI
- ChatGPT/Claude
- 連携・自動化
- Make/n8n/Power Automate/Zapier
- 対象業界
- その他/自治体
- 対象部門
- カスタマーサポート
- 対象業務
- 分類・仕分け/問い合わせ対応
- 主な課題
- 判断に時間がかかる/問い合わせが多い/属人化している
- AIで行う処理
- 分類
- 主な効果
- 品質標準化/対応スピード向上/属人化解消
- 導入難易度
- ★★★☆☆
- 実装レベル
- 本格構成
- 費用感
- API連携(中)
- 人間の確認
- 条件付き
01導入前 / 導入後の業務フロー
- 電話を受けた受付が、症状と加入者の名前・住所・契約番号を聞いてメモにする。Webフォームとメールのものは、受付が開いて読む
- 顧客管理システムで加入者を引き、契約しているサービスと設置機器を確かめる
- 症状を読み、「操作の案内で直る」「技術の受付に回す」を決める。操作の案内で直るものは、その場で案内する
- 技術の受付に回したものは、技術の担当が遠隔で機器の状態を見て、直せるものは直す
- 遠隔で直らないものは、訪問の予約表に入れる
- 同じ地区から問い合わせが続いていると誰かが気づいたら、技術の担当が設備の状況を確かめる
- 対応の結果を問い合わせの記録の表に書く
- 人電話の受付は、話しながら受付用のフォームに症状と契約番号を打つ
- 自動Webフォームとメールの問い合わせも、同じワークフローに入る
- 自動契約番号か電話番号で加入者を引き、契約しているサービス・設置機器・住所を取る
- 自動住所の町丁目から、系統の表で伝送路の系統を引く
- 自動AIが問い合わせの文を症状の区分に分け、機器の表示・ランプ・範囲などの手がかりを書き出す
- 自動同じ系統の直近の問い合わせの件数を数え、しきい値を超えていれば「障害の疑い」の印を付ける
- 自動症状の区分・契約・印から、行き先の案(操作案内/遠隔対応/訪問/障害の疑い)を規則で決める
- 人受付が行き先の案を見て確かめ、操作案内で直るものはその場で案内する
- 人「障害の疑い」の知らせを受けた技術の担当が、設備の状況を確かめ、個別の訪問の予約を止めるかを決める
- 【人/自動】 決めた行き先と結果を、問い合わせの記録に残す
各工程の詳しい説明を読む
- 電話を受けた受付が、症状と加入者の名前・住所・契約番号を聞いてメモにする。Webフォームとメールのものは、受付が開いて読む
- 顧客管理システムで加入者を引き、契約しているサービスと設置機器を確かめる
- 症状を読み、「操作の案内で直る」「技術の受付に回す」を決める。操作の案内で直るものは、その場で案内する
- 技術の受付に回したものは、技術の担当が遠隔で機器の状態を見て、直せるものは直す
- 遠隔で直らないものは、訪問の予約表に入れる
- 同じ地区から問い合わせが続いていると誰かが気づいたら、技術の担当が設備の状況を確かめる
- 対応の結果を問い合わせの記録の表に書く
(a)症状の書き方がばらばら。 「テレビが映らない」の中に、全部のチャンネルが映らないもの、一部のチャンネルだけ映らないもの、画面に番号の付いたメッセージが出ているもの、テレビの入力の切り替えが違っているだけのものが混ざります。どれに当たるかを聞き分けるのに、経験の差が出ます。
(b)回す先の判断が人に寄っている。 夜間の受付が訪問の予約を入れた件が、翌朝に技術の担当が見ると遠隔で直るものだった、ということが起きます。逆に、遠隔で何度も再起動を試してから、結局は引き込み線の不具合で訪問になったものもあります。
(c)障害に気づくのが遅れる。 6番目は「誰かが気づいたら」です。電話を受ける受付は1件ずつしか見ておらず、Webとメールの受付は別の担当が見ています。 同じ系統から15分で何件も届いていても、入口が分かれていると重なりが見えません。気づくまでのあいだに、訪問の予約が何件も入ります。
(d)報告の材料が後から集まらない。 障害だった場合、いつから何件の問い合わせがあったかを後でまとめますが、記録の書き方がそろっていないと数え直しから始まります。
- 【人】 電話の受付は、話しながら受付用のフォームに症状と契約番号を打つ
- 【自動】 Webフォームとメールの問い合わせも、同じワークフローに入る
- 【自動】 契約番号か電話番号で加入者を引き、契約しているサービス・設置機器・住所を取る
- 【自動】 住所の町丁目から、系統の表で伝送路の系統を引く
- 【自動】 AIが問い合わせの文を症状の区分に分け、機器の表示・ランプ・範囲などの手がかりを書き出す
- 【自動】 同じ系統の直近の問い合わせの件数を数え、しきい値を超えていれば「障害の疑い」の印を付ける
- 【自動】 症状の区分・契約・印から、行き先の案(操作案内/遠隔対応/訪問/障害の疑い)を規則で決める
- 【人】 受付が行き先の案を見て確かめ、操作案内で直るものはその場で案内する
- 【人】 「障害の疑い」の知らせを受けた技術の担当が、設備の状況を確かめ、個別の訪問の予約を止めるかを決める
- 【人/自動】 決めた行き先と結果を、問い合わせの記録に残す
6番目が、この構成でいちばん効くところです。 入口が3つに分かれていても、系統ごとの件数は1つの記録の上で数えます。 電話の受付とメールの受付がそれぞれ1件ずつしか見ていなくても、重なりは機械の側で見えます。
9番目を人にしているのは、障害かどうかを決めるのが問い合わせの件数ではないからです。 件数は疑いの材料にすぎず、設備の監視の画面と現場の状況を見て決めるのは技術の担当です。
02今回想定するシステム構成
電話(受付用フォーム)/Webフォーム/メール ▼【トリガー】Form Trigger / Gmail Trigger n8n ├──▶ 加入者の引き当て(顧客管理システムの出力) ├──▶ 系統の表(Data Table)── 町丁目 → 系統 ▼ Claude(Anthropic Chat Model) │ Text Classifier ── 症状の区分 │ Information Extractor ── 機器の表示・範囲・時刻の手がかり ▼ n8n ── 同じ系統の直近の件数を数える(問い合わせの記録の Data Table) ▼ 規則(Code ノード)── 行き先の案 │ 操作案内 / 遠隔対応 / 訪問 / 障害の疑い ▼ 【人が確認】受付・技術の担当 ├──▶ Slack ── 障害の疑いを技術の担当へ └──▶ 問い合わせの記録
| 役割 | 想定する製品 | 代替候補 |
|---|---|---|
| ワークフロー | n8n(Form Trigger、Gmail Trigger、Text Classifier、Information Extractor、Data Table、Code) | Make、Zapier、Power Automate |
| 生成AI | Claude(n8n の Anthropic Chat Model ノード) | OpenAI API |
| 保管 | n8n の Data Table(系統の表、行き先の規則の表、問い合わせの記録) | PostgreSQL |
| 通知 | Slack(n8n の Slack ノード) | Microsoft Teams |
新しく足すのは n8n と系統の表です。 顧客管理システムと訪問の予約表には書き込みません。準備の中心は、技術の部署の台帳にある「町丁目と系統の対応」を、受付の側から引ける1枚の表にすることです。 これが無いと、地域で分けるという半分が成り立ちません。
n8n を選ぶのは、入口の違う問い合わせを1本の流れに集め、同じ記録の上で数えられるからです。 区分と書き出しのノードに Claude をつなげ、件数を数える記録も Data Table に置けるので、別のデータベースを立てずに始められます。
03どうやって実装するのか
処理の起点を決める
起点は3つです。
| 起点 | ノード | 動く時 |
|---|---|---|
| 電話の問い合わせ | Form Trigger(受付用) | 受付がフォームを送るたび |
| Webの不具合の受付 | Form Trigger(公開用) | 加入者がフォームを送るたび |
| メールの問い合わせ | Gmail Trigger | 不具合の窓口のラベルが付いたメールを見つけるたび |
受付用のフォームは、Authentication を n8n User Auth にします。 n8n にログインした受付だけが開けるようにし、外から問い合わせを作られないようにします。公開用のフォームは加入者が送るので、Ignore Bots をオンにして、リンクのプレビューやクローラーからの送信を無視します。
フォームの時刻は Use Workflow Timezone をオンにします。 既定は UTC で、オフのままだと submittedAt が9時間ずれます。系統ごとの件数を「直近30分」で数えるので、入口ごとに時刻の基準がずれると、重なりを見落とします。
Gmail Trigger は、不具合の窓口のアドレスに届いたメールに付くラベルで絞ります。 1回の取得の件数(Max Emails per Poll)は既定で10、上限で50で、残りは次の回に回ります。障害のときはメールが一度に増えるので、上限の50にし、取得の間隔は短くします。 取り残しが次の回に回るだけで消えはしませんが、件数を数える時刻が遅れます。
入力データを集める
| データ | 中身 | 取得元 |
|---|---|---|
| 問い合わせの文 | 症状の文、受付が選んだサービス(放送/ネット/電話)、契約番号、電話番号、受け付けた時刻 | 受付用フォーム、公開用フォーム、メール |
| 加入者の情報 | 契約しているサービス、設置機器の種類、住所の町丁目、集合住宅かどうか | 顧客管理システムの出力 |
| 系統の表 | 町丁目、集合住宅の名前、系統の記号、系統の世帯数 | Data Table |
| 行き先の規則の表 | 症状の区分と契約の組み合わせごとの行き先、障害の疑いのしきい値 | Data Table |
| 問い合わせの記録 | 受け付けた時刻、系統の記号、症状の区分、行き先、結果 | Data Table |
質を決めるのは、系統の表です。 町丁目だけで系統が1つに決まらない地区(同じ丁目が2つの光ノードにまたがる、集合住宅だけ別の引き込み)があるので、集合住宅は名前で、それ以外は町丁目で引けるように行を分けます。 1つに決まらない地区は、系統の記号を2つ並べた行にし、後段で「系統未確定」として扱います。
系統の世帯数を持たせるのは、しきい値を系統の大きさで変えるためです。 200世帯の系統で30分に3件と、2,000世帯の系統で30分に3件は、意味が違います。
データの取得方法を決める
| 取るもの | どこから | 何に使うか |
|---|---|---|
| 加入者の情報 | 顧客管理システムが夜間に出す加入者の一覧を Data Table に入れたもの。契約番号、なければ電話番号で引く | サービス・機器・住所 |
| 系統の記号 | 系統の表を、集合住宅の名前、なければ町丁目で Get | 件数を数える単位 |
| 直近の件数 | 問い合わせの記録を、系統の記号と受け付けた時刻で Get | 障害の疑いの印 |
| 行き先 | 行き先の規則の表を、症状の区分と契約で Get | 行き先の案 |
顧客管理システムには、この構成から直接つなぎません。 夜間に出力される加入者の一覧を取り込んで引きます。当日に加入・住所変更があった加入者は引けないことがあり、その場合は「加入者未確認」として受付に返します。
Data Table の容量に注意します。 公式のページでは、インスタンスのすべての Data Table の合計は既定で200MiBまでとされ、自社で動かす場合は N8N_DATA_TABLES_MAX_SIZE_BYTES で変えられます。上限を超えると、行を足したり書き換えたりする実行が失敗します。 加入者4万世帯の一覧は容量を食うので、持たせる列は引き当てに使うものだけにし、問い合わせの記録は月ごとに外へ書き出して古い行を消します。
Code ノードは Data Table の値を直接読めません。 公式のページにそう書かれています。件数を数えるときは、Data Table ノードの Get で直近の行を取ってから、Code ノードに渡して数えます。
AIへ渡す前に整形する
- 入口ごとの形をそろえる … 3つの入口の項目を、同じ名前にそろえます。メールは件名と本文をつなげ、署名と引用を外します
- 加入者を引く … 契約番号、なければ電話番号で引きます。引けなければ「加入者未確認」の印を付けます
- 系統を引く … 集合住宅の名前、なければ町丁目で引きます。2つに当たれば「系統未確定」の印を付けます
- 個人の情報をAIへの材料から外す … 名前・電話番号・契約番号・住所は渡さず、症状の文と受付が選んだサービスだけを渡します
- 同じ問い合わせをまとめる … 同じ加入者から直近2時間に同じサービスの問い合わせがあれば、件数に足さず、先の問い合わせに書き足します
- 緊急の語の印 … 「緊急通報」「110番」「119番」「固定電話がかからない」などの語があれば、AIの区分とは別に印を付けます
5番目を省くと、障害の疑いが実際より早く立ちます。 1軒の加入者が電話とメールの両方で問い合わせると2件に数えられ、4軒が2回ずつ連絡しただけで「8件」になります。 数えるのは問い合わせの数ではなく、問い合わせてきた世帯の数です。
6番目は電話のサービスのためです。 固定電話がつながらない加入者は、緊急の通報もできない状態にあるかもしれません。AIの区分を待たずに、規則で優先の印を付けます。
AIに処理させる
させるのは2つです。症状を区分することと、機器の状態の手がかりを書かれたとおりに書き出すことです。
症状の区分は Text Classifier ノードで行います。 区分ごとに名前と説明を書きます。
| 区分 | 説明に書くこと |
|---|---|
| 放送_全部 | すべてのチャンネルが映らない。画面にメッセージや番号が出ている |
| 放送_一部 | 一部のチャンネルだけ映らない、画面が止まる、ブロック状に乱れる |
| ネット_不通 | インターネットにまったくつながらない |
| ネット_品質 | つながるが遅い、ときどき切れる、特定の時間だけ遅い |
| 電話 | 固定電話がかからない、聞こえない、雑音がする |
| 機器の操作 | リモコン・録画・設定・入力の切り替えなど操作のしかた |
When No Clear Match は「Output on Extra, 'Other' Branch」に変えます。 既定の「Discard Item」のままだと、どの区分にも当たらない問い合わせは黙って捨てられ、受付に届きません。 Other に出たものは、受付がそのまま読みます。
Allow Multiple Classes To Be True はオフにします。 「テレビもネットも全部だめ」は、区分ではなく書き出しの側の services_affected で拾います。複数のサービスが同時に止まっているという事実は、障害の疑いのいちばん強い手がかりなので、区分の1つに埋もれさせないためです。
書き出しは Information Extractor ノードで行います。 画面に出ている番号やメッセージ、モデムのランプ、いつからか、家の中の全部か一部か、を書かれたとおりに写させます。
| させないこと | 理由 |
|---|---|
| 行き先を決めること | 行き先の規則の表で決める |
| 障害かどうかを決めること | 件数は機械が数え、決めるのは技術の担当 |
| 機器の故障だと言うこと | 遠隔の確認か訪問で確かめる |
| 復旧の見込みを答えること | 設備の状況を見た人だけが言える |
| 料金・修理代を答えること | 契約と現地の状況で決まる |
指示内容を固定する
Information Extractor ノードの System Prompt Template に次の文を入れます。
あなたはケーブルテレビ局の不具合の受付で、問い合わせの文を読んで
技術の担当に渡す手がかりを整える立場です。
文に書かれていることだけを、決まった項目に書き出してください。
【書き出すもの】
- services_affected:止まっているサービス(放送/ネット/電話)。
文に書かれているものだけ。複数あればすべて
- screen_message:画面に出ているメッセージや番号。書かれたとおりに写す
- device_lights:モデムやチューナーのランプの色・点滅。書かれたとおりに写す
- scope_in_home:家の中のテレビ・機器の全部か一部か
- since_text:いつからか(「今朝から」「30分前から」など書かれたとおり)
- tried:加入者がすでに試したこと(再起動、配線の確認など)
- weather_or_work:雷・強風・近所の工事などの記載
- missing:行き先を決めるのに足りない情報
- questions_for_reception:受付が加入者に確かめるべきこと
【厳守事項】
- 書かれていない項目は空にしてください。推測で埋めないでください。
- screen_message は、番号や記号を補ったり言い換えたりせず、そのまま写してください。
- 「全部だめ」とだけ書かれている場合は、どのサービスのことかを
questions_for_reception に書き、services_affected には入れないでください。
- 機器の故障・障害・復旧の見込みについて書かないでください。
- 料金や修理代について書かないでください。
- 機器の分解や配線の工事を勧める内容を書かないでください。
【受付が選んだサービス】{service_selected}
【症状の区分(別のノードの結果)】{symptom_class}
【問い合わせの文】{inquiry_text}
「全部だめ」を推測で広げないのは、件数の数え方に効くからです。 放送だけ契約している加入者の「全部」は放送のことで、ネットと電話を足すと、「複数のサービスが同時に止まっている」という強い手がかりが、事実でないまま立ちます。
screen_message を言い換えさせないのは、番号そのものが手がかりだからです。 技術の担当は、表示された番号で受信の状態か機器の状態かの見当を付けます。AIが「受信できないというメッセージ」と言い換えると、その手がかりが消えます。
出力形式を固定する
次の形の JSON で受け取ります。
{
"symptom_class": "放送_全部 | 放送_一部 | ネット_不通 | ネット_品質 | 電話 | 機器の操作 | other",
"services_affected": ["放送", "ネット"],
"screen_message": "",
"device_lights": "オンラインのランプが点滅",
"scope_in_home": "全部",
"since_text": "19時ごろから",
"tried": ["モデムの電源の入れ直し"],
"weather_or_work": "",
"missing": [],
"questions_for_reception": []
}
この後ろに、Code ノードが規則で次を足します。
| 足す項目 | 決め方 |
|---|---|
segment | 系統の表で引いた系統の記号。2つに当たれば 未確定 |
households_in_window | 同じ系統の直近30分の問い合わせ世帯数(同じ世帯は1つ) |
outage_suspect | 世帯数が系統の大きさごとのしきい値以上、または services_affected が2つ以上の世帯が2軒以上 |
route | 行き先の規則の表。outage_suspect が立てば 障害の疑い を優先 |
priority_flag | 前処理の緊急の語の印 |
1つ目の理由は、route を表の値で決められることです。 「ネット_不通でモデムのランプの記載あり」は遠隔対応、「放送_全部で家の中の全部」は遠隔で受信の状態を見たうえで訪問、のように、組み合わせごとに表の1行で決めます。 判断を直すときは表を直せばよく、AIの指示は変えません。
2つ目は、outage_suspect を件数と内容の2つの材料で立てられることです。 件数が少なくても、放送とネットが同時に止まった世帯が同じ系統に2軒あれば、伝送路の側を疑う理由になります。
3つ目は、記録がそろうことです。 区分と系統と時刻が同じ形で残るので、障害だった場合にいつから何世帯の問い合わせがあったかを、記録から数えられます。
システムへ連携する
| つなぎ先 | 方式 | 内容 |
|---|---|---|
| 受付用・公開用のフォーム | Form Trigger | 電話のメモとWebの問い合わせを受ける |
| メール | Gmail Trigger | 不具合の窓口に届いたメールを拾う |
| Claude | Text Classifier、Information Extractor + Anthropic Chat Model | 症状の区分と書き出し |
| Data Table | Data Table ノード | 加入者の一覧、系統の表、行き先の規則の表、問い合わせの記録 |
| 規則 | Code ノード(JavaScript) | 件数の集計、障害の疑い、行き先の案 |
| Slack | Send and Wait for Response(Approval) | 障害の疑いを技術の担当に知らせ、個別の手配を止めるかを聞く |
障害の疑いの知らせは、Slack の Send and Wait for Response で送ります。 Response Type を Approval にすると、技術の担当が Slack のボタンで答えたところでワークフローが続きます。Capture Who Responded をオンにして、誰が答えたかを記録に残します。 Restrict Who Can Approve で、答えられる人を技術の担当に絞ります。
承認されたら、同じ系統の新しい問い合わせの行き先の案を「障害対応中」に切り替えます。 受付は個別の訪問の予約を入れず、加入者には「地域で調べています」と案内します。切り替えを戻すのも技術の担当の操作で、機械が勝手に戻しません。
顧客管理システムと訪問の予約表には書き込みません。 予約を入れるのは受付の手で、この構成は行き先の案を出すまでです。
人が確認する
- 受付は行き先の案を見てから案内する … 案は画面に出るだけで、加入者に何を伝えるかは受付が決めます
- Other と加入者未確認は受付がそのまま見る … 区分に当たらないものと、加入者を引けなかったものは、案を出さずに受付へ返します
- 障害の疑いは技術の担当が決める … 監視の画面と設備の状況を見て、Slack で承認か却下を選びます
- 行き先を変えたら記録する … 案と違う行き先にしたときは、理由を選んで残します
3番目を自動にしないでください。 件数のしきい値を超えても、同じ集合住宅の数軒が同じ時間に同じ操作で迷っただけ、ということがあります。 逆に、件数が少なくても設備の監視に出ているなら障害です。件数は、技術の担当が監視の画面を見に行くきっかけです。
目標は、1,200件をならして1件2分です。 受付は案を読んで確かめ、違えば直すだけにします。
例外に対処する
| 起きること | 対応 |
|---|---|
| 加入者が引けない | 当日の加入・変更かもしれない。加入者未確認 で受付へ |
| 系統が2つに当たる | 未確定 とし、件数はどちらの系統にも足さず、未確定の件数として別に数える |
| どの区分にも当たらない | Other 出口から受付へ |
| 固定電話がつながらない旨の語がある | 優先の印を付けて、区分の前に受付の画面の上に出す |
| メールが一度に大量に届く | 取得の上限を50にし、残りは次の回に回る。件数の時刻は受け付けた時刻で数える |
| AIが応答しない | 区分なしで受付へ返す。件数の集計は区分に関係なく続ける |
| Data Table の容量が上限に近い | 80%で警告が出る。問い合わせの記録を書き出して古い行を消す |
| 技術の担当が Slack に答えない | 一定の時間ごとに当番の担当へ知らせ直す。答えが無いあいだも件数は数え続ける |
6行目の「件数の集計は続ける」は、障害のときほど効きます。 障害で問い合わせが一度に増えると、AIの呼び出しが遅れたり失敗したりすることがあります。区分が付かなくても、系統ごとの世帯数は数えられます。 区分を待って件数の集計を止めると、いちばん知りたいときに知らせが出ません。
記録を残す
- 問い合わせの文と入口、受け付けた時刻
- AIの区分と書き出しの結果(JSON)
- 系統の記号、直近の世帯数、障害の疑いの印、行き先の案
- 受付が決めた行き先と、案と違ったときの理由
- Slack での承認・却下、答えた人、答えた時刻
- 障害対応中への切り替えと解除の時刻
4つ目を必ず残します。 案と違う行き先が続く区分は、行き先の規則の表が現場に合っていないということです。月に一度、案と違った件を区分ごとに数えて表を直します。
5つ目と6つ目は、障害だった場合の報告の材料になります。 総務省のページでは、重大な事故の詳細な報告の中で、利用者からの電話やメールによる問い合わせの件数を算出方法とともに書くとされています。いつから何世帯の問い合わせがあったかを、この記録から数えられるようにしておきます。
04実装レベルの3段階
最小構成では件数がさばけません。 1件ずつ貼り付けるので、確かめるための段階です。 半自動化で、1件6分が3分程度になります。 加入者と系統の引き当てと区分は自動になりますが、同じ系統の問い合わせが重なっているかは、まだ人が記録を見て気づくしかありません。 本格構成で2分になり、この段階が本記事の想定です。 段階を飛ばさないでください。 半自動化で1か月分の記録がたまると、系統ごとのふだんの問い合わせの数が分かります。 しきい値は、その数を見てから決めます。最初から決め打ちのしきい値で知らせを出すと、知らせが多すぎて技術の担当が見なくなります。
05工数削減シミュレーション
導入後 1,200件 × 2分 ÷ 60 = 40 時間/月
自社条件で導入効果を整理したい方へ
このユースケースを自社に当てはめた場合の前提値と削減見込みを、業務ヒアリングをもとに整理します。
06向いている企業・向いていない企業
- 放送とインターネットと電話をあわせて提供する地域のケーブルテレビ局で、不具合の問い合わせが電話・Webフォーム・メールから月に数百件以上届く場合。受付の担当が症状を読んで遠隔で直せるか訪問が要るかを決めており、その判断が経験のある担当に寄っている場合。同じ地域から問い合わせが続いたときに、伝送路の障害に気づくのが遅れた経験がある場合。加入者の住所から伝送路の系統を引ける表を作れる場合。
- 加入者が数千世帯以下で、不具合の問い合わせが月に数十件にとどまる場合。伝送路と機器の監視の仕組みが整っていて、障害は問い合わせより先に監視で必ず見つかる場合。住所と伝送路の系統の対応が台帳に無く、作る見込みも無い場合。なお、重大な事故に当たるかの判断と総務省への報告は、この構成では代替できません。
07最小構成で試す方法
- 先月の問い合わせの記録から50件を選ぶ(うち数件は、後で障害だったと分かった日のものを入れる)
- その50件について、当時どの行き先にしたか、遠隔で直ったか、訪問になったかを確かめる
- 個人の情報を消した症状の文を、手元のAIサービスの画面に1件ずつ貼り付ける
- 「この問い合わせを、放送_全部/放送_一部/ネット_不通/ネット_品質/電話/機器の操作 のどれかに分けてください。当てはまらなければ『その他』としてください。画面のメッセージやランプの状態が書かれていればそのまま写し、書かれていなければ空にしてください」と指示する
- 出てきた区分を、当時の行き先と結果に照らして見る
50件は必ずやってください。 ワークフローを組む前に、「症状の文から区分が付くか」と「区分から行き先が決まるか」を分けて確かめます。
| 出てきた内容 | 判断 |
|---|---|
| 区分が当時の判断とおおむね合う | 系統の表とワークフローの準備に進む |
| 画面の番号を言い換えた | 指示の書き方で直る。構成は有効 |
| 区分は合うのに、当時の行き先がばらばら | 行き先の規則の表を作るのが先。 AIの問題ではない |
3行目が出たら、それが一番の収穫です。 同じ区分が受付によって遠隔にも訪問にも回っていたということで、属人化していた場所そのものです。
08実装時につまずきやすいポイント
| 問題 | 対策 |
|---|---|
| 区分に当たらない問い合わせが消える | When No Clear Match の既定は Discard Item。 Other の出口に変える |
| 1軒が電話とメールで連絡して2件に数えられる | 数えるのは世帯。同じ加入者の直近の問い合わせはまとめる |
| フォームの時刻が9時間ずれる | Use Workflow Timezone をオンにする。既定は UTC |
| 「全部だめ」が放送・ネット・電話の全部になる | 書かれていないサービスを足さないと指示し、受付への問いにする |
| 画面の番号が言い換えられる | 書かれたとおりに写すと指示する |
| 系統の表が古い | 系統の工事や集合住宅の新築のたびに、技術の部署が直す取り決めにする |
| しきい値が低すぎて知らせが鳴りやまない | 半自動化の記録から系統ごとのふだんの数を見て決める |
| 障害のときにAIの呼び出しが遅れる | 件数の集計を区分と切り離して続ける |
| Data Table の行を足す実行が失敗する | 合計200MiBが既定の上限。記録を月ごとに外へ出す |
上の2行が、この構成の失敗のほとんどです。 1行目は数えるべきものが消える、2行目は数えるべきでないものが増える失敗で、障害の疑いの知らせが信用されるかは、この2つで決まります。
09セキュリティ・AIガバナンス上の注意点
この構成で扱うデータ: 加入者の名前・住所・電話番号・契約番号、契約しているサービスと設置機器、症状の文、そして伝送路の系統の情報です。
- AIに渡すのは症状の文だけにする … 名前・住所・電話番号・契約番号は渡しません。系統を引くのも件数を数えるのも、ワークフローの側で行います
- 系統の表を外へ出さない … どの地区がどの設備につながっているかは、設備の弱いところを示す情報にもなります。 AIにも渡しません
- 障害かどうかを機械に決めさせない … 出すのは疑いの印までで、決めるのは技術の担当です。 加入者に「障害です」と伝えるのも人です
- この構成は重大な事故の判断と報告を代替しません … 総務省のページでは、電気通信役務の提供を停止または品質を低下させた事故で影響利用者数と継続時間が基準を満たすものは、速やかに状況を報告し、30日以内に詳細を報告するとされています。当たるかどうかを決めて報告するのは事業者の責任者です。 この構成は、問い合わせの件数という材料をそろえるところまでです
- Data Table の見える範囲を決める … 公式のページでは、プロジェクトで作った Data Table は既定でそのプロジェクトのメンバー全員が見られるとされています。加入者の一覧を置くプロジェクトのメンバーを絞り、列は引き当てに要るものだけにします
誤りが起きた場合のリスクは、障害を個別の不具合として扱って訪問を重ねることと、個別の不具合を障害として扱って加入者を待たせることの2つです。 前者は件数が数えられないと起き、後者はしきい値と世帯のまとめ方が甘いと起きます。どちらも件数の数え方の問題なので、そこを設計で守ります。
10まず何から始めるか
1週目:系統の表を作る
技術の部署の台帳から、町丁目と集合住宅ごとの系統の記号と世帯数を1枚の表に写します。全地区を一度に埋める必要はありません。 問い合わせの多い地区から埋めます。2つの系統にまたがる地区は、2つを並べた行にしておきます。
2週目:50件で試す
先月の問い合わせから50件を選び、手元のAIサービスで区分を付けさせます。当時の行き先と結果に照らし、区分が合っているか、画面の番号を言い換えていないかを見ます。
3週目:行き先の規則の表を作る
症状の区分と契約の組み合わせごとに、行き先を1行ずつ決めます。 受付の担当と技術の担当が一緒に決めます。ここが決まらないうちにワークフローを組むと、案は出るのに誰も従わない状態になります。
4週目:3つの入口を n8n に集める
受付用・公開用のフォームと Gmail Trigger から、加入者と系統の引き当て、区分と書き出し、記録への書き込みまでを作ります。この時点では障害の疑いの知らせを出さず、系統ごとの世帯数を記録するだけにします。
2か月目: 1か月分の記録から、系統ごとのふだんの問い合わせの数を見てしきい値を決め、Slack への知らせを足します。3か月目以降: 案と違った行き先を区分ごとに数えて行き先の規則の表を直し、1件6分が何分になったかを実測します。障害の疑いの知らせが、技術の担当が監視の画面を見に行く合図として定着した時点で、この構成は完成です。
11関連ユースケース
12この仕組みを理解するための記事
13技術仕様の確認日・参考情報
| 確認した内容 | 情報源 | 確認日 |
|---|---|---|
| Text Classifier に区分ごとの名前と説明を書くこと。When No Clear Match の既定が Discard Item で、Output on Extra, 'Other' Branch に変えられること。Allow Multiple Classes To Be True の既定がオフであること。System Prompt Template を変えられること | n8n Docs: Text Classifier | 2026-10-28 |
| Information Extractor の Schema Type の3つの書き方と、System Prompt Template を変えられること | n8n Docs: Information Extractor | 2026-10-28 |
| Anthropic Chat Model のノードで Claude を使えること。Sampling Temperature などの設定 | n8n Docs: Anthropic Chat Model | 2026-10-28 |
Form Trigger の Authentication に n8n User Auth があること。Ignore Bots でリンクのプレビューやクローラーを無視できること。Use Workflow Timezone の既定が UTC で submittedAt に効くこと | n8n Docs: Form Trigger | 2026-10-28 |
| Gmail Trigger の Max Emails per Poll が既定10・上限50で、残りは次の回に取得されること。ラベルで絞れること | n8n Docs: Gmail Trigger | 2026-10-28 |
| Data Table ノードの行の操作(Get、Insert、Update、Upsert、If Row Exists など) | n8n Docs: Data Table | 2026-10-28 |
Data Table の合計が既定で200MiBまでで N8N_DATA_TABLES_MAX_SIZE_BYTES で変えられること。80%で警告が出て、超えると挿入・更新の実行が失敗すること。プロジェクトのメンバーが既定で見られること。Code ノードから直接読めないこと | n8n Docs: Data tables | 2026-10-28 |
| Slack の Send and Wait for Response の Approval、Capture Who Responded、Restrict Who Can Approve | n8n Docs: Slack の承認 | 2026-10-28 |
| 電気通信役務の提供を停止または品質を低下させた事故で影響利用者数と継続時間が基準を満たすものは、速やかに状況を報告し30日以内に詳細を報告すること。詳細な報告に利用者からの電話やメールによる問い合わせ件数を算出方法とともに書くこと | 総務省: 重大な事故の報告 | 2026-10-28 |
重大な事故に当たるかの判断と報告は、事業者の責任者が総務省の基準に照らして行ってください。 本記事は公式のページで確認できた範囲だけを扱っています。
実装ステータス:構成例。 公開仕様に基づいて設計した構成であり、当社で実際に構築・検証したものではありません。工数の数値はモデル条件による試算です。
自社の業務に使えるAI活用候補を整理します
このユースケース(UC-2206)についてのご相談はこちらから。
