真 LINE 已走完綁定和改資料,畫面改成一頁一題
結論先講:11/10 用真 LINE 從加好友、登入、綁定、改電話一路走到承辦核准,完整走過一次。依試用回饋,畫面全面改成「一頁只問一件事、選項做成大卡片」,參考英國政府 GOV.UK 的設計規範;同時加上防重送,審核結果也會用 LINE 通知本人。新版畫面已在模擬環境逐頁驗過,還要用手機再試一次。
三句話結論
- 登入、綁定、改電話、承辦核准,11/10 已用真 LINE 走完(當時是舊版畫面)。
- 新版畫面(一頁一題、大卡片、確認頁、完成頁、資料頁顯示審核中、審核結果 LINE 通知)只在模擬環境驗過,要再用手機試。
- 最大的未知數仍是有多少人的聯絡資料已過期:這些人過不了簡訊驗證,要由承辦人工核對。
整個系統怎麼運作
點任何方塊就能看到那一步的畫面。四個區塊是四個角色:捐贈者只碰 LINE 和網頁;資料留在平台,承辦審核後才寫進主資料庫。顏色:綠色=已用真 LINE 走過,黃色=只在模擬環境驗過,橘色=功能本身是模擬的,灰色=還沒做。
flowchart TD
subgraph donor[捐贈者的手機:LINE]
qr([掃水瓶 QR]) --> add[加官方帳號好友]
add --> menu[點圖文選單
確認我的資料]
linemsg[收到 LINE 通知
審核結果、提醒]
end
subgraph plat[自建網頁平台]
login[LINE 登入
只取 userId]
bindflow[一頁一題填資料
身分證、生日、實體卡
和主資料庫比對]
pick{還收得到哪一種?}
view[我的聯絡資料
只顯示遮罩]
change[申請更新
改電話先驗新號碼]
end
subgraph staff[承辦後台]
manual[人工核對身分]
review[審核更新申請]
end
write[(主資料庫:POC 模擬
聯絡資料、異動歷史)]
menu --> login --> bindflow --> pick
pick -- 手機驗證碼或 Google --> view
pick -- 都換了 --> manual
manual -- 核准 --> view
view -- 有地方要改 --> change --> review
review -- 核准 --> write
review -- 核准或退回 --> linemsg
manual -- 核准或退回 --> linemsg
linemsg -- 點連結 --> view
classDef real fill:#DCEFE1,stroke:#2F6B4A,color:#1F3350
classDef mock fill:#FFF3D1,stroke:#B9861F,color:#1F3350
classDef sim fill:#F8E3D6,stroke:#B9561F,color:#1F3350,stroke-dasharray:5 3
classDef todo fill:#ECECEC,stroke:#8A8A8A,color:#1F3350,stroke-dasharray:5 3
class add,menu,login,view,review real
class linemsg,bindflow,pick,change,manual mock
class write sim
class qr todo
捐贈者流程:每一步
新版畫面照 GOV.UK 的原則:一頁只問一件事、選項不預選、每頁有「上一步」、送出前有確認頁、送出後有完成頁。方塊一樣可以點,顏色意思同上。
flowchart TD qr([水瓶 QR
人人相同,還沒印]) --> add[加官方帳號好友] add --> menu[圖文選單] menu --> learn[認識捐贈
不用登入,內容待提供] menu --> mine[確認我的資料] mine --> login[用 LINE 登入] login --> consent[同意個資
目前是測試文字] consent --> idn[身分證字號
打字自動轉大寫] idn --> birth[生日
民國年滾輪] birth --> card{手邊有實體卡嗎?} card -- 有:填骨髓碼 --> confirm[確認一下
每項可修改] card -- 不見了 --> confirm confirm --> pick{還收得到哪一種?
不透露是否相符} pick --> sms[手機驗證碼
10 秒後才能重發] pick --> google[Google 帳號] pick -- 都換了 --> manual[留下現在的聯絡方式
承辦聯絡本人] sms --> bound[綁定完成頁] google --> bound manual -- 承辦核准 --> bound bound --> notify[通知留存的聯絡方式] notify --> view[我的聯絡資料
只顯示遮罩] view --> ask{這些資料還正確嗎?} ask -- 都正確 --> ok[記錄確認時間] ask -- 有地方要改 --> change[勾選要改的項目] change --> creview[確認要更新的資料] creview -- 改電話 --> phoneotp[驗證碼發到新號碼] creview -- 只改 Email 或地址 --> cdone phoneotp --> cdone[完成頁
申請編號] cdone --> pending[資料頁顯示審核中
可修改或撤回] pending --> review{承辦審核} review -- 核准 --> write([寫入主資料庫
保留歷史]) review -- 核准或退回 --> linemsg[LINE 通知本人] linemsg --> view classDef real fill:#DCEFE1,stroke:#2F6B4A,color:#1F3350 classDef mock fill:#FFF3D1,stroke:#B9861F,color:#1F3350 classDef sim fill:#F8E3D6,stroke:#B9561F,color:#1F3350,stroke-dasharray:5 3 classDef todo fill:#ECECEC,stroke:#8A8A8A,color:#1F3350,stroke-dasharray:5 3 class add,menu,mine,login,consent,view,ok,review real class learn,idn,birth,card,confirm,pick,google,manual,bound,ask,change,creview,cdone,pending,linemsg mock class sms,notify,phoneotp,write sim class qr todo
綁定之後:提醒和斷線偵測
這兩條才是預防資料過期的日常運作。排程提醒和斷線後的處理都還沒做。方塊一樣可以點。
flowchart LR cron[排程自動提醒] --> remind[手機收到提醒
內容中性,不含個資] staffpush[承辦手動發提醒] --> remind remind --> open[點連結登入確認] block[捐贈者封鎖官方帳號] --> webhook[Webhook 通知平台] webhook --> flag[標記為已封鎖] flag --> other[承辦改用其他管道聯絡] classDef real fill:#DCEFE1,stroke:#2F6B4A,color:#1F3350 classDef mock fill:#FFF3D1,stroke:#B9861F,color:#1F3350 classDef todo fill:#ECECEC,stroke:#8A8A8A,color:#1F3350,stroke-dasharray:5 3 class block,webhook,flag real class staffpush,remind,open mock class cron,other todo
LINE 上會看到什麼
模擬畫面,不是手機截圖。版面是示意;訊息文字取自程式,選單圖片是從真 LINE 下載的。最右邊是這次新增的審核結果通知。
這次依試用回饋改了什麼
11/10 手機試用後提出的問題。系統是給一般民眾用的,大多數人沒有資訊背景。
| 試用時的問題 | 改法 | 依據 |
|---|---|---|
| 改電話送出驗證碼後「沒動靜」 | 送出後先到完成頁:申請編號、接下來會發生什麼。回到資料頁時,電話底下直接顯示「審核中:改為 09*****678」 | GOV.UK 完成頁 |
| 可以一直重複送出 | 按鈕按下立刻變「處理中…」;驗證碼 10 秒內不能重發,按鈕會倒數;同一個號碼不重發。伺服器也擋,不只靠畫面 | 試用回饋 |
| 資料頁不是最新狀態 | 審核中的申請直接顯示在資料頁,可修改或撤回;核准後標「已更新」,結果顯示 14 天;核准或退回都用 LINE 通知本人 | 試用回饋 |
| 一般民眾不熟電腦 | 一頁一題、選項做成大卡片、不預選、每頁有「上一步」、字放大到 18px、錯誤訊息就在該題旁邊 | GOV.UK 問題頁、單選元件 |
| 骨髓碼常對不上 | 先問「手邊有實體卡嗎?」,選「有」才出現欄位;送出前的確認頁可以逐項修改 | GOV.UK 確認頁 |
| 身分證打成小寫 | 打字時自動轉大寫,游標不會亂跳 | 試用回饋 |
| 後台重新整理會多發一組綁定碼 | 產生綁定碼後轉址,重新整理不會再發 | 線上紀錄查到 |
| 解除綁定一按就生效 | 多一頁「確定要解除綁定嗎?」 | GOV.UK 問題頁 |
| 按「都正確」→「回我的資料」,又被問同一題 | 答過後顯示「已確認」,180 天內不再問(期限暫定);申請的更新核准後也一樣 | 試用回饋 |
| 逐頁檢查又找到 6 個流程問題 | 閒置才登出並說明原因、登出和解除綁定有回饋、錯誤訊息貼著題目、改申請時同號碼不重發驗證碼、「上一步」回確認頁、別人的綁定碼可以退出。完整對照見 畫面流程圖.html 第 5 張 | 流程檢查 |
資料放在哪裡
LINE 只負責認人和通知。聯絡資料不會出現在 LINE 訊息裡。
實際畫面:綁定
新版畫面在模擬環境實際操作的截圖,手機寬度 390。LINE 登入是模擬的,資料全部是假的。
沒勾同意不能繼續
錯誤訊息就在題目旁邊
民國年滾輪
選「有」才出現骨髓碼欄位
每一項都能回去修改
不透露資料是否相符
重新發送要等倒數
說明接下來會發生什麼
勾選後才出現欄位
結果會用 LINE 通知
實際畫面:查看與更新資料
這一段就是這次試用時「送出後沒動靜」的地方。
只顯示遮罩內容
記錄確認時間
答過就不再重問
勾了才出現欄位
先說明接下來的步驟
只有改電話才有
申請編號和後續步驟
可以修改或撤回
新號碼標「已更新」
先確認一次
實際畫面:LINE 和承辦
圖文選單是從真的 LINE 下載的圖片;承辦後台是模擬環境的截圖。後台頂端的紅框是因為測試期間關掉了流量限制。
真 LINE 上的預設選單
比對相符不等於本人,要先聯絡對方
標示新電話是否通過驗證碼
後台會說 LINE 通知有沒有送出
封鎖後顯示「已封鎖」
測試用的驗證碼也在這裡
進度時間軸
照實際發生的順序排。
- 確認方向,做出平台第一版
LINE 只當入口,資料留在自建平台,先用模擬 LINE 走通。
- 接上真的官方帳號,驗證通知功能
圖文選單、卡片訊息、自動回覆、封鎖偵測都通過;配合水瓶 QR 重新設計驗證。
- 真 LINE 走完綁定和改資料
Business ID 連動後,手機實際走過:登入、同意、填資料、模擬簡訊、綁定、改電話、承辦核准。用的是舊版畫面。
- 依試用回饋改成一頁一題
參考 GOV.UK;加上防重送、審核中狀態、審核結果 LINE 通知。190 項測試通過,模擬環境逐頁截圖檢查。
- 用手機試新版畫面
看大卡片在 LINE 內建瀏覽器的樣子、倒數、自動轉大寫,以及審核結果通知。
- 補測,再恢復流量限制
人工核對和承辦手動推播也用真 LINE 測;測完移除測試用的開關。
- 向上級展示,決定正式版
在單位的 provider 底下重建,部署到單位的伺服器。
最大風險聯絡資料過期的人正好是要找的人,他們也最可能過不了簡訊驗證。人工核對很可能是主要工作量,還沒有數據可以估算。
不要印 POC 的 QRprovider(LINE 開發者組織)指定後不能改。水瓶要印單位 provider 底下的正式帳號。
設計原則驗證只能開門,不能單靠它改資料。改電話一定要承辦聯絡新號碼;身分證填寫途中也只存加密後的內容。
目前限制平台跑在個人電腦上,用臨時通道對外,關機或通道重建後網址要更新。測試期間流量限制是關閉的。
功能進度台帳
「真 LINE」代表用手機實際走過;「模擬環境」代表流程走得通,但 LINE 或 Google 那端是假的。
| 功能 | 狀態 | 說明 |
|---|---|---|
| 官方帳號、圖文選單、Flex 卡片、自動回覆 | 真 LINE | 自動回覆不計入額度,也不儲存使用者打的字 |
| 封鎖、解除封鎖偵測 | 真 LINE | 平台紀錄和手機操作時間一致 |
| LINE Login | 真 LINE | 11/10 手機登入成功 |
| 個資同意、填資料、簡訊驗證、綁定 | 真 LINE | 11/10 用舊版畫面走完(POC-0001);新版畫面待手機確認 |
| 改電話、承辦核准 | 真 LINE | 11/10 用舊版畫面走完;新版加了確認頁、完成頁、審核中狀態 |
| 一頁一題新版畫面 | 模擬環境 | 190 項測試加逐頁截圖;手機上的樣子還沒看過 |
| 審核結果 LINE 通知 | 模擬環境 | 核准、退回都會推播;主動推播每人每則計入每月額度(回覆訊息不計),推播失敗不影響審核 |
| Google 驗證 | 模擬環境 | 還沒建 Google client |
| 人工核對 | 模擬環境 | 承辦要先聯絡本人 |
| 後台手動推播 | 模擬環境 | 群發已用真 LINE 測過,個別推播還沒 |
| 簡訊驗證碼(綁定、改電話) | 功能模擬 | 沒有真的發送,規則已實作 |
| 通知留存聯絡方式 | 功能模擬 | 只寫進後台紀錄 |
| 主資料庫 | 功能模擬 | 同一個 SQLite 檔案裡的假資料表 |
| 排程自動提醒 | 還沒做 | 目前由承辦手動發 |
| 舊登記者導入流程 | 還沒做 | 怎麼讓已登記的人知道要加好友 |
| 串接主資料庫、部署伺服器 | 還沒做 | 要先問清楚主資料庫 |
還要找人確認的事
這些問題都不是寫程式能解決的。
| 問誰 | 問什麼 | 影響什麼 |
|---|---|---|
| 主資料庫負責人 | 有手機和 Email 的比例、資料多久沒更新、Gmail 比例(只要統計,不要個資) | 多少人要人工核對,也就是要多花多少人力 |
| 主資料庫負責人 | 由誰管、能直接連還是只能匯出匯入、身分證和骨髓碼是否都查得到 | 正式版的綁定和匯入怎麼做 |
| 水瓶的承辦單位 | 水瓶會發給誰 | 「認識捐贈」要放什麼內容 |
| 靜思堂有經驗的同仁 | 簡訊服務怎麼選、大概多少費用 | 何時能換成真的簡訊 |
| 法務 | 個資告知同意內容、HLA 是否屬於基因資料 | 正式版能不能上線、哪些資料不能進平台 |
| 單位主管 | 手機多久沒更新就不能只靠簡訊(目前暫定 3 年);審核結果和提醒的推播量,免費的每月 200 則夠不夠 | 舊資料的驗證嚴格程度、要不要升級方案 |
| LINE 台灣 | 基金會或醫療單位怎麼申請認證帳號、AI 功能能否使用 | 使用者會不會把提醒當成詐騙 |
(POC 示意)
請確認您的聯絡資料(POC 測試)
選擇帳戶
這一步沒有畫面。使用者封鎖後,LINE 會在背景通知我們的伺服器,類似這樣(內容已簡化):
{
"type": "unfollow",
"source": { "type": "user", "userId": "U…(略)" },
"webhookEventId": "…"
}平台會先驗證 LINE 的簽章,確認無誤才更新好友狀態。手機電話失效時不會有這種通知,所以這是 LINE 通道的優勢。
這一步還沒做。目前要由承辦手動發送。做好之後,捐贈者會收到和右邊一樣的提醒。多久提醒一次要由單位決定;每則推播都會計入訊息額度。
這一步還沒做,也沒有畫面。目前平台只會標記「已封鎖」。之後怎麼處理要由單位決定,例如列出清單,由承辦改用電話、Email 或郵寄聯絡。
LINE 登入
不取暱稱、大頭貼和 Email