琴平デジタル町民 — 体験デモ
LINEから入った町民・ゲスト・プレミアム会員の体験を、実際に触って確認できるプロトタイプです。 各シーンは会員状態(👋 ゲスト / 🗾 町民 / 👑 プレミアム)を切替えて出し分けを確認できます。
登録町民
2,095人
● 本番DB
お店
25店舗
● 本番DB
イベント
282件
● 本番DB
P1〜P8 成果物総覧(5/7 移行に向けた集中改修)
「個別 push 経路」「アンケート回答 0% の根因解消」「LINE webhook 紐付け不具合修正」「friend 観測テーブル新設」を 1 セッションで完了。 各 Phase の実画面 / 内部 docs リンクは下記。🔒 は社内限定 docs。
個別 push bulk 機能を本番琴平 channel 用に拡張 ⚙ Backend
dispatchFlexToCommunity を community ごとに provider 解決できるよう拡張。本番琴平 @997qsntl は line-kotohira-prod の Account から userId を引く。
strict-review + verifier ⚙ Backend
ESLint / TypeScript / 1773 unit tests / build いずれも pass。境界違反・既存テスト破壊なしを確認。
P1 を origin/main へ commit + push (7de7b3f3) ⚙ Backend
Vercel 自動デプロイ完了。本番反映済み。
8 パターン × 入口 2 種 = 8 経路の静的解析レポート 🔒 内部 docs
forcommunity アカウント有無 × 琴平アカウント有無 × LINE/HP 入口で「琴平デジタル町民登録完了 + アンケート回答」までの完走可否を網羅。
P5 を strict-reviewer で再評価(追加発見あり) 🔒 内部 docs
COMMUNITY_CONFIG の本番琴平 accountProvider が forcommunity Channel 用 line だった不具合を特定。1,841 友だち全員が User 自動紐付けされない設計上の問題を発見し P7-2 で修正。
アンケート回答 UI を新設(回答率 0% → 機能化) ✓ 実画面
既存 API は完備だが回答 UI が琴平導線に存在しなかった根因を解消。5 フィールド型 (TEXT/PARAGRAPH/SELECT/RADIO/CHECKBOX) 全対応。マイページ自動リダイレクトで既存 2,020 名にも遡及。
COMMUNITY_CONFIG.accountProvider を line → line-kotohira-prod ⚙ Backend
本番琴平 webhook follow event で User 紐付けに使う provider を正規 Channel スコープに切替。既存テスト 13 件 fail → 22/22 pass まで修正。
KotohiraLineFriend 観測テーブル + webhook 拡張 ⚙ Backend
本人確認なしの friend ID を User と紐付けず保存。broadcast 代替の multicast 宛先候補集合と友だち数集計に活用可能。Prisma migration 適用済み。
P7 全体を origin/main へ commit + push (b7da0f0f) ⚙ Backend
3 サブタスク (P7-1/2/3) を 1 コミットに統合。本番デプロイ完了。
既存 2,020 名向け遡及アンケート運用案 🔒 内部 docs
Phase A (自動リダイレクトのみ) → Phase B (LINE 配信誘導) → Phase C (ポイント付与) の 3 段階運用。期待回収率と通数試算を併記。
🔒 社内限定 docs: GitHub リポジトリ did-event/docs/ 配下にあり、Vercel では配信されません。リンク先で 404 の場合はリポジトリでご覧ください。
全12機能のフロー一覧(社内向け)
町民登録・イベント・クーポン・P2P送金・プレミアム・ギフト受領など、 各機能で「どの画面→どのAPI→何が起きるか」をステップ形式でまとめたリファレンス。
琴平 WBS(実装進捗 & チェックリスト)
KOTO_1〜14 / BASE_1〜7 / リッチメニュー&会員系チェックリスト9項目 / 見積書 Phase 0–3 + 追加スコープを1ページで確認できる正本ページ。本番切替(5/7)に向けた残課題と運営確認待ち項目もここに集約。
誰が・何を・どう使えるか(ロールごとの登録方法と条件)
各シーンにバッジで「利用可能ロール」を表示。このページでは登録方法・条件・できることを 7 ロール分まとめて確認できます。
案内フロー(4種類)を見る
「運営が設定する画面」と「ユーザーのLINE画面」を同時に横並びで表示。 町民登録・クーポン発行・イベント申込・お知らせ配信の各フローを、ステップを進めながら両画面の連動を確認できます。
テスト LINE 公式アカウントでできること
@806kkjqy 「琴平デジタル町民(テスト)」 を友だち追加すると、運営2-3名で実機検証できます。 本番 (1,818友だち) には一切影響しません。
リッチメニュー9面
ゲスト/町民/プレミアム × 特典・町民証/お店・イベント/体験・アクセス
タブ切替(richmenuswitch)
アクティブタブ2回押しで誤送信しない仕様
友だち追加→自動コミュニティ参加
既存アプリユーザーは tier に応じたメニュー、新規は guest_benefit
ウェルカム配信 (Flex Message)
コミュニティ説明・主要機能の案内
LINE連携完了→citizen切替
既加入ユーザーは signIn 時にメニュー再評価
プレミアム購入→premium切替
Stripe webhook 経由で自動切替
友だち削除→自動コミュニティ離脱
webhook unfollow event で同期
ボタン全 13 ユニーク URL を定義
店舗一覧・イベント・マイページ・スポットワーク等。2026-04-27 時点で全件 200 を実測済(再検証は実機で)
- LINE プッシュ配信 UI(運営 → 全友だち)はアプリ admin から既存対応
- 個別チャット応答(user → bot のメッセージ自動応答)は未実装
- 住民証 NFT は mock 運用中(cardano/evm provider のコードはあるが本番鍵・契約未配備、切替は別作業)
- LINE Login と Messaging API の Bot は別チャネル(友だちにならないと配信されない)
🎬 おすすめ体験順 / KOTO 番号対応表
各シーンに付いている KOTO_n は、 三好様・ナオミ様との会話・commit・playbookで「KOTO_5を触ってます」のように指差すための共通ラベルです。
- KOTO_1 LINE友だち追加〜あいさつ(Flex Message付き)
- KOTO_2 リッチメニュー9面(会員状態を切替えて比較)
- KOTO_3 LINE連携〜町民登録(氏名・住所・生年月日の必須フォーム+100pt進呈)
- KOTO_4 マイページ(会員証・残高・履歴)
- KOTO_5 イベント一覧・詳細(本番DBの実イベント)
- KOTO_6 イベントチェックイン(QR読取→ポイント付与)
- KOTO_7 お店一覧・クーポン利用
- KOTO_8 お店マップ
- KOTO_9 町内移動(mobi配車・タクシー・バス・自転車)
- KOTO_10 町民どうしでお礼pt送金(三好→髙木 100pt)
- KOTO_11 プレミアム購入(Stripe風決済)
- KOTO_12 プレミアム特典一覧
- KOTO_13 町長選挙(候補者・投票)
- KOTO_14 お店オーナー管理画面
- KOTO_15 スポットワーク(地域版タイミー:マッチングのみ/決済は当事者間)
- KOTO_16 お問い合わせフォーム(5/7 切替告知 #16,#17 のトラブル導線、kotobus → kotohira.love 切替可)
👋ゲスト〜町民登録— LINE友だち追加から町民登録までの体験
③ LINE連携〜町民登録
LINE連携→町民登録フォーム(氏名・住所・生年月日 必須)→町民証発行
※ 本番は LINE ログイン画面に遷移
📎 町民チャンネル ハブ
YouTube・Instagram・X・オプチャ への案内ハブ(本番ページ)
📎 ポイントの貯め方
ポイントを貯める4つの方法を説明(本番ページ)
📎 ポイントの使い道
ポイントの使い道を説明(本番ページ)
🗾町民の日常利用— 登録後の通常利用フロー
👑プレミアム体験— 住民証NFT保有者だけの特別体験
📎 プレミアム(住民証NFT)
プレミアム制度・特典・加入方法を集約(本番ページ)
🏪お店視点— 店舗オーナーから見た管理画面
⑯ お問い合わせフォーム
5/7 切替後のトラブル受付。kotobus → kotohira.love 切替可
📎 LIFF挙動デモ
LINE内ブラウザ(LIFF)のSDK挙動を再現(技術参考)
何かおかしかったら教えてください
5/7 切替後に「画面が表示されない」「ポイント残高が違う」「LINE 連携できない」など気になることがあれば、 お問い合わせフォームから連絡をお願いします(5/7 時点の受付先: kotobus / 将来 kotohira.love に切替予定)。
お問い合わせフォーム →📝 このデモについて
- 店舗・イベントは本番DBから取得しています(該当データがない場合のみフェイク)
- ポイント・クーポン利用・投票の状態はブラウザのlocalStorageに保存され画面をまたいでも保持されます
- リッチメニューはLINEアプリ内に表示されるものを画面下部に再現
- 会員状態は画面上部の切替ボタンで自由に変更できます