由於Covid-19在2022年襲擊台灣,年末時許多公司無法再接受WFH,隨時開始採用自主體溫回報。台灣護國神山台積電也是如此,凡事只要進去台積電的人,都需要填寫體溫回報。
台積電的體溫回報是採用線上的方式,透過SurveyMonkey的表單來填寫體溫,再由SurveyMonkey API回傳到台積內部的伺服器。台積內部的伺服器會每15分鐘去抓取資料後更新。
整體的防疫概念相當的合理,但是每一次都需要重覆填寫一樣的資料(疫苗注射時間、近期事是否有出國、注射過幾劑疫苗)導致台積電相關人員相當困擾,又SurveyMonkey表單實在過於太長,有些協力廠商訪台積電時也並不會帶可上網裝置填寫,所以使用起來相當的不方便。
友人剛好在台積協力廠商,每天需要進廠。針對以上的困擾,問筆者是否可以優化。
筆者原本預計使用自己的伺服器每天固定幫友人打資料給SurveyMonkey. 但一個轉念,想說乾脆開發iOS App上架造福所有的台積電相關人員。
整體的開發過程省略,總之就是先逆向將SurveyMonkey的資料逆向出來。把Token填好後即可發送固定的數值。再將使用者數值紀錄(工號、體溫),這樣一開App就可以實現一鍵回報體溫。
開發好打包好就上架至App Store供友人公司無償使用
App 連結:點我一下

本來以為開發到這已經告個段落。有天台積電的員工私訊我說從外包廠商得知我有這個App,希望我可以支援台積電員工的版本。
這時候才發現之前SurveyMonkey的表單只是提供給協力廠商,如果是台積電正式員工是透過另一個表單來實現體溫回報的。透過台積電的員工幫忙後,如法泡製的做出一樣的功能。在原本App的介面下可以去選擇為台積Vendor or 員工。
支援台積正職就到此告段落。
但是筆者想了一想,發現我只是簡化了填寫表單的動作。會忘記填寫表單的人還是會忘記填寫表單啊…..
所以想了很久看要怎麼讓這塊自動化..
因為是iOS,所以只好將腦筋動到Siri shortcut上面。但Siri只提供打開App, 並沒有辦法執行表單送出的功能。
後來研究了一下架構,決定打算在App上支援“deeplink URL”,就是如果連結打開會直接彈到相關的App, 很多購物網站app都有這項功能。就連youtube都有這功能。
Apple 開發者相關頁面(點我一下)
設計後好,在App一點開的scense去判斷這次進來的是不是為Scheme導入的,如果是的話就自動送出表單。
func scene(_ scene: UIScene, openURLContexts URLContexts: Set<UIOpenURLContext>) {
if let url = URLContexts.first?.url
{
let urlComponents = URLComponents(url: url, resolvingAgainstBaseURL: true)
let host = urlComponents?.host ?? ""
if (host == "autorun")
{
ViewController.auto_run = true ;
window?.rootViewController?.viewDidLoad()
}
}
}
這樣在Siri Shortcut上就不用使用”打開App”,而是打開連結。

建立好這個捷徑後,在設定每天凌晨12:30自動直接捷徑,這樣就可以實現自動送出表單了。
後記:
因為也沒有花錢打廣告,只有用自己做短網址提供朋友在廠內交流的時候可以方便傳達下載連結。截至截稿的時候,App後台顯示總共下載次數為242,瀏覽率大約為1.7K。總之能幫到大家就好拉~


短網址的點擊次數其實也只有46次,大部分應該還是透過apple store來做下載的。

搶先發佈留言