Formosa ESG 2026 — 使用者流程图
LINE 相关
主要流程
资料 / 服务器
等级 / 成就
碳足迹
1
开启页面
使用者从 QR Code 或 LINE Rich Menu 进入 Tracker
📱 QR Code 扫码
实体海报 / 社群分享连结
💬 LINE 图文菜单
LINE Bot @539fkwjd 下方按钮
2
LINE 登入 LIFF SDK
透过 LIFF 自动触发 LINE Login,免密码、免註册
LIFF init → 检查登入状态 → 自动取得 LINE 头像与名称
首次登入时自动在 D1 建立使用者(formosa_users upsert)
本机存入 formosa_user_id + formosa_access_token
首次登入时自动在 D1 建立使用者(formosa_users upsert)
本机存入 formosa_user_id + formosa_access_token
已登入?
✅ Yes
自动显示头像 + 名称,直接进入 ❌ No
跳转 LINE 授权页 → 授权后回到 Tracker 3
隐私同意 + AuthGate
说明资料蒐集范围,取得使用者同意后解锁功能
蒐集项目:LINE 个人资料、GPS 轨迹、问卷答案、每日碳排回报
照片仅读取 EXIF GPS 座标(不上传服务器)
使用者随时可透过「完成进香」按钮停止追踪
照片仅读取 EXIF GPS 座标(不上传服务器)
使用者随时可透过「完成进香」按钮停止追踪
4
问卷填写(14 题)一题一页卡片
线性进度条 + 可中断存档(localStorage 自动保存)
Q1-Q3
善行与感动时刻、慈善理解度
Q4-Q6
活动后生活改变意愿
Q7-Q8
交通方式 + 距离(步行/开车/摩托车/公交车/地铁/火车/高铁)
Q9-Q14
瓶装水 / 回收 / 旅宿 / 电话 / 碳排试算
⚡ 碳排试算即时运算(SBTi 善足迹 / Ecoinvent 3.10)
📞 电话栏位是解锁成就卡的三大条件之一
📞 电话栏位是解锁成就卡的三大条件之一
5
提交问卷 Server Sync
问卷答案绑定 LINE userId,写入 Cloudflare D1
Rate limit:每 10 分钟最多 2 次提交
提交后进入打卡模式(主画面)
提交后进入打卡模式(主画面)
6
打卡模式(Check-in Mode)
进香期间的主要操作画面,GPS 持续追踪
📍 GPS 自动追踪
背景持续记录路线,KV Buffer 暂存 → 批次写入 D1
✋ 手动打卡
按钮触发 + 定位,累积里程与打卡次数
📷 拍照打卡
选照片 → 读取 EXIF GPS → 照片不上传(仅文字示意)
⏸️ 暂离 / 完成
暂停追踪不结束 session;「完成进香」结算成就卡
Rate limit:5 次打卡 / 60 秒(KV 滑动视窗计数器)
GPS 点先写 KV(TTL 24hr),每晚批次 flush 到 D1
GPS 点先写 KV(TTL 24hr),每晚批次 flush 到 D1
持续循环(活动期间每天重复操作)
6.5
每日碳足迹回报 🌱
GPS 速度自动判断 + 手动补充,即时换算碳排
🚶 零碳移动(自动)
速度 <15 km/h → 判定步行/骑车 → CO₂ = 0
🚗 交通碳排(手动)
开车 0.21 / 摩托车 0.10 / 公交车 0.05 / 地铁 0.03 kg CO₂e/km
🧴 日常碳排
塑胶瓶 0.3 kg/瓶、旅宿 2.5 kg/晚
📊 即时试算
碳足迹 + 碳减量(vs. 全程开车)
资料来源:SBTi 善足迹 / Ecoinvent 3.10
每日可重新提交(覆盖前次记录)
每日可重新提交(覆盖前次记录)
7
等级系统 + AI 公仔
双条件升级(公里数 + 打卡次数),9 级进化
| 等级 | 名称 | 公里 | 打卡 | 对应 |
|---|---|---|---|---|
| Lv.1 | 🔥 炼气香客 | 0 | 1 | 起步 |
| Lv.2 | 🧱 筑基香客 | 15 | 3 | ≈ Day 1 |
| Lv.3 | 💛 金丹香客 | 45 | 5 | ≈ Day 2 |
| Lv.4 | 👶 元婴香客 | 90 | 6 | ≈ Day 3 |
| Lv.5 | ✨ 化神香客 | 135 | 8 | ≈ Day 4 |
| Lv.6 | 🌀 炼虚香客 | 180 | 10 | ≈ Day 5 |
| Lv.7 | 🤝 合体香客 | 225 | 12 | ≈ Day 6 |
| Lv.8 | 🏆 大乘香客 | 270 | 14 | ≈ Day 7 |
| Lv.9 | 🚀 飞升香客 | 300 | 14+ | 全程走完 |
每级对应一张 AI 生成粉色头巾公仔(1200px WebP)
双条件逻辑:公里数 AND 打卡数都要达标才升级
双条件逻辑:公里数 AND 打卡数都要达标才升级
8
成就卡解锁 🏅
三大条件全部达成才会解锁
✓
打卡 ≥ 3 次 ✓
完成问卷 ✓
留电话号码 🎴 卡片内容
公仔 + 等级 + 里程 + 打卡数 + 碳排 + 碳减量 + 路线地图
📎 QR Code
连结个人验证页 /my/[userId],商家可扫码验证
9
分享 📤 Web Share API
一键分享,自动产生 OG 预览图
📤 原生分享
按钮触发 Web Share API → 系统菜单(LINE / FB / 複製连结)
🖼️ OG 预览图
html2canvas 截图 → 上传 R2 → 动态 OG meta tag
🔗 个人页面
朋友点连结可看即时数据(公里 / 打卡 / 碳排)
🤖 爬虫侦测
Pages Function 拦截 LINE/FB crawler,改写 OG meta
10
完成进香 🎉
使用者主动结束 或 活动结束自动结算(4/20)
停止 GPS 追踪 → 结算最终等级 → 成就卡定版
个人页面永久保留(QR Code 持续有效)
个人页面永久保留(QR Code 持续有效)