Home iOS 捷徑自動化應用場景 — 自動轉發簡訊與自動建立提醒待辦事項
Post
Cancel

iOS 捷徑自動化應用場景 — 自動轉發簡訊與自動建立提醒待辦事項

iOS 捷徑自動化應用場景 — 自動轉發簡訊與自動建立提醒待辦事項

iOS 使用 捷徑 Shortcut 簡單幾個步驟自動轉發特定簡訊到 Line 和自動創建包裹到貨領取與信用卡繳費提醒代辦事項

Photo by [Jakub Żerdzicki](https://unsplash.com/@jakubzerdzicki?utm_content=creditCopyText&utm_medium=referral&utm_source=unsplash){:target="_blank"}

Photo by Jakub Żerdzicki

背景

捷徑 Shortcut (舊稱 Workflow) 是 iOS 12 開始的新功能;能自行建立一系列工作一鍵執行和設定自動在背景觸發執行。

除了 iOS 自帶 App 的捷徑功能,這幾年蘋果也將 Siri Shortcut / App Intents 開放給開發者,讓第三方 App 也能把部分功能放到捷徑中供使用者組合使用。

自動執行條件的部分目前只限 iOS 自身或自家的 App,例如:特定時間、抵達、離開某個位置、感應到 NFC、收到訊息、電子郵件或連接上 Wi-Fi、電池電量、勿擾模式、偵測到聲音…等等

蘋果自家的服務,不需要像早期轉發簡訊要越獄;捷徑功能,免越獄,免安裝奇怪的第三方 App。

網路上介紹捷徑如何使用、提供現成腳本的內容已經很多,本篇文章不多敘述。

iOS 的跨裝置訊息轉寄功能(設定 -> 訊息 -> 訊息轉寄)必須是同個 Apple ID 的裝置才行,因此我們要使用捷徑幫我們完成特定訊息轉寄。

本篇只介紹 3 個我覺得很實用方便又簡單的應用場景。

場景 1 — 自動轉發簡訊

在這個詐騙簡訊滿天飛的年代很怕家中長輩小孩收到詐騙簡訊不小心輸入資料被騙,或是長輩不懂收簡訊驗證這個帳號安全流程,需要遠端幫他收簡訊完成驗證;另外也怕小朋友用手機去做一些不允許的事。

[https://branch.taipower.com.tw/d112/xmdoc/cont?xsmsid=0M242581319225466606&sid=0N209616847897374705](https://branch.taipower.com.tw/d112/xmdoc/cont?xsmsid=0M242581319225466606&sid=0N209616847897374705){:target="_blank"}

https://branch.taipower.com.tw/d112/xmdoc/cont?xsmsid=0M242581319225466606&sid=0N209616847897374705

效果

設定條件如下:

  • 當收到簡訊包含「http」時轉發訊息「內容」到 Line 給我
  • 當收到簡訊包含「通知」時轉發訊息「內容」到 Line 給我
  • 當收到簡訊包含「驗證碼」時轉發訊息「內容」到 Line 給我
  • 當收到簡訊包含「認證碼」時轉發訊息「內容」到 Line 給我

實測即使手機在未解鎖待命狀態也都能正確執行發送。

設定方式

1.安裝& 打開 捷徑 App

2.切換到「自動化」頁籤,選擇右上角「+」,下滑找到「訊息」

3. 設定訊息條件

  • 「訊息包含」: http ( =有附網址的簡訊都會轉發 ) 多個關鍵字要個別建立多個捷徑。
  • 「確認後執行」 改成 「立即執行」
  • 點擊 「下一步」

何時 — 其他設定:

  • 「寄件人」:多個,但要加入到聯絡人
  • 「訊息包含」、「寄件人」兩個條件需至少則一設定, 因此無法不設條件處理所有訊息

4. 新增自動化操作

  • 選擇 「新增空白的自動化操作」
  • 如果想轉發到 Line 訊息則在搜尋匡輸入 「line」 搜尋 Line 提供的捷徑功能,找到 Line的 「傳送訊息」 選擇想傳送的目標

這邊如果只會出現最近四位對話對象或群組,如果沒有出現你要的目標,可以先回到 Line 上傳送幾則訊息給目標對象或群組,再回來看就會出現了。

對象選擇通訊錄電話號碼功能在 Line 傳送訊息無效。

  • 同理,你也可以改用 「傳送訊息」「發送電子郵件」 的動作(如第三張圖),將收到的訊息內容轉發到簡訊(如果沒開 iCloud 訊息可能會被收取簡訊費用)或 Email。

新增傳送對象後

  • 先點擊 將「訊息」傳送給「XXX」 ,的 「訊息」 輸入匡
  • 向右滑找到&點擊 「捷徑輸入」
  • 回到上方點擊 將 「捷徑輸入」傳送給「XXX」 ,的 「捷徑輸入」 輸入匡
  • 跳出下方選單,將原本選擇的 「訊息」 改為 「內容」
  • 點擊選單旁邊「X」關閉
  • 點擊右上角「完成」

如果要更改傳送給 XXX 對象,要先點右邊 X 移除整個 Line 動作,然後再重新新增一次 Line 傳送訊息動作 with 新對象。

  • 確認最終設定結果是: 當我收到包含「XXX」的訊息時,將訊息作為輸入接收,Line 將「內容」傳送給「XXX」
  • 沒問題點擊右上角「完成」 如果點完成沒反應那可能是遇到 iOS Bug,可以不管他直接點返回回到首頁。
  • 回到捷徑自動化首頁可以查看、暫停、修改這則捷徑。

完成!

只要坐等新簡訊進來,符合包含的關鍵字就會自動轉發(就算手機沒解鎖),礙於目前功能限制,每個關鍵字都要建立一個捷徑,同個簡訊包含到不同關鍵字會發送兩次。

場景 2 — 包裹送達超商時-自動建立提醒待辦事項

我目前使用 Apple 內建的提醒事項當做生活事項的待辦管理工具,所以我也希望那些需要提醒我的事也能整合進去,例如包裹送達超商、信用卡繳費通知…等等

效果

設定條件如下:

  • 當收到簡訊包含「已在」時新增提醒事項 (Coupang 是用「已在」)
  • 當收到簡訊包含「送達」時新增提醒事項 (一般都是「送達」)

設定方式

1.安裝& 打開 捷徑 App

2.切換到「自動化」頁籤,選擇右上角「+」,下滑找到「訊息」

3. 設定訊息條件

同前文自動轉發簡訊介紹的何時條件,這邊設定 訊息內容包含「送達」 和改成 「立即執行」

4. 新增自動化操作 & 設定提醒時間

首先我們要先設定提醒事項的到期日,新增一個日期變數,計算當收到訊息的時間開始 + 多少時間等於我們要的提醒時間。

  • 選擇 「新增空白的自動化操作」
  • 下方搜尋匡搜尋 「調整日期」
  • 選擇 「調整日期」
  • 選擇 將「日期」加上 0 秒「日期」 輸入匡
  • 下方選取變數,選擇 「目前的日期」
  • 選擇 加上 0 「秒」 ,的 「秒」 輸入匡,改成 「天」
  • 輸入你希望多久到期提醒的天數,這邊我輸入 3 天
  • 點擊選單旁邊「X」關閉

5. 新增提醒事項動作

  • 在搜尋匡輸入 「提醒」 下滑找到&點擊 「新增提醒事項」

新增「新增提醒事項」後

  • 先點擊 將「提醒事項」加入「提醒事項」並不提示 ,的第一個 「提醒事項」 輸入匡
  • 向右滑找到&點擊 「捷徑輸入」
  • 點擊 將「捷徑輸入」加入「提醒事項」並不提示 ,的 「捷徑輸入」 輸入匡
  • 跳出下方選單,將原本選擇的 「訊息」 改為 「內容」
  • 點擊選單旁邊「X」關閉

6. 設定提示提醒

  • 「不提示」 改選擇 「提示」
  • 選擇 於時間「下午 2:00」「下午 2:00」 輸入匡,選擇變數 「已調整日期」
  • 點擊選單旁邊「X」關閉
  • 都沒問題後點擊右上角「完成」 如果點完成沒反應那可能是遇到 iOS Bug,可以不管他直接點返回回到首頁。

  • 回到捷徑自動化首頁可以查看、暫停、修改這則捷徑。

完成!

同前述,只要坐等新簡訊進來,符合包含的關鍵字就會自動建立提醒事項(就算手機沒解鎖),礙於目前功能限制,每個關鍵字都要建立一個捷徑,同個簡訊包含到不同關鍵字會建立兩次。

場景 3 — 收到信用卡帳單郵件時-自動建立提醒待辦事項

另一個生活通知是信用卡帳單通知;設定類似簡訊,當收到電子郵件時也能觸發捷徑自動化新增提醒事項;但因目前自動化功能未開放給第三方 App,所以只能使用 Apple 郵件 App 觸發。

效果

設定條件如下:

  • 當收到電子郵件標題包含「信用卡帳單」時新增提醒事項

請注意每家的格式都不一樣 Orz,有的叫「信用卡電子帳單」、「信用卡電子對帳單」國泰的更狠叫「信用卡XXXX年X月電子帳單」

因為暫時不支援 Regex 所以只能使用文字匹配,同前述 每個關鍵字都要新增一則捷徑。

1.確認你已安裝 郵件 App 並完成信箱帳號登入 (Gmail 也可)

2.確認郵件擷取設定

確認「設定」->「郵件」->「帳號」->「擷取新資料」設定為擷取或推播。

3.安裝& 打開 捷徑 App

4.切換到「自動化」頁籤,選擇右上角「+」,下滑找到「電子郵件」

3. 設定電子郵件條件

  • 「標題包含」: 信用卡帳單 多個關鍵字要個別建立多個捷徑。
  • 「確認後執行」改成 立即執行
  • 點擊「下一步」

何時 — 其他設定:

  • 「寄件人」:多個,但要加入到聯絡人
  • 其他過濾條件 — 帳號:可篩選來源是 iCloud or Gmail
  • 其他過濾條件 — 收件人:多個,但要加入到聯絡人,一般就是自己的多個帳號

4. 新增自動化操作 & 設定提醒時間

先設定提醒事項的到期日,新增一個日期變數,計算當收到訊息的時間開始 + 多少時間等於我們要的提醒時間。

  • 選擇 「新增空白的自動化操作」
  • 下方搜尋匡搜尋 「調整日期」
  • 選擇 「調整日期」
  • 選擇 將「日期」加上 0 秒「日期」 輸入匡
  • 下方選取變數,選擇 「目前的日期」
  • 加上 0「秒」「秒」 改成 「天」
  • 輸入你希望多久到期提醒的天數,這邊我輸入 3 天
  • 點擊選單旁邊「X」關閉

5. 設定過濾信件

跟訊息一則一則觸發不一樣,郵件的觸發是批次擷取,因此只要那批次有出現關鍵字標題的信件,那幾封新信件也會被一同送進來。

不確定是不是捷徑 Bug,但總之結果就是如此。

舉例:批次擷取到三封信,有一封家樂福通知信、信用卡帳單信、Uber 通知信,這三封都會做為捷徑輸入給我們;因此我們要再加一個步驟過濾出我們要的關鍵字信件。

虛擬邏輯:

1
2
3
4
5
6
for 信件標題 in 信件s
  if 信件標題.contain("信用卡帳單") then
    新增提醒事項
  else
  end 
end

  • 在搜尋匡輸入 「重複」 下滑找到&點擊 「重複每一個」
  • 新增完會抓錯變數,選擇 重複「已調整日期」中的每個項目「已調整日期」 輸入匡,選擇 「清除變數」
  • 清除後,選擇 重複「項目」中的每個項目「項目」 輸入匡,選擇 「捷徑輸入」

  • 在搜尋匡輸入 「如果」 下滑找到&點擊 「如果」
  • 這時候位置會是錯的

  • 拖曳 若「重複結果」「狀況」 動作到 重複「捷徑輸入」中的每個項目 下面(內)
  • 確認最終位置圖如上圖二,如果不對請刪除重複跟如果並從上一步重新操作
  • 點擊 若「重複結果」「狀況」「重複結果」 輸入匡,下方改選擇 「標題」 ,點擊選單旁邊「X」關閉

  • 點擊 若「標題」「狀況」「標題」 輸入匡,改選擇 「包含」 ,輸入 「信用卡帳單」 ,點擊鍵盤的「完成」

6. 設定過濾信件

  • 在搜尋匡輸入「提醒」下滑找到&點擊「新增提醒事項」
  • 一樣這時候位置會是錯的
  • 拖曳 將「提醒事項」加入「提醒事項」並「不提示」 動作到 若「標題」「包含」「信用卡帳單」 下面(內)
  • 確認最終位置圖如上圖三,如果不對請刪除重複跟如果並從上一步重新操作

新增「新增提醒事項」後

  • 點擊 將「提醒事項」加入「提醒事項」並「不提示」 ,的第一個 「提醒事項」 輸入匡
  • 向右滑找到&點擊 「重複項目」
  • 回到上方點擊 「重複項目」 輸入匡,將原本選擇的 「電子郵件」 改為 「標題」
  • 點擊選單旁邊「X」關閉

6. 設定提示提醒

  • 「不提示」 改選擇 「提示」
  • 選擇 於時間 下午 2:00「下午 2:00」 輸入匡,選擇變數 「已調整日期」
  • 點擊選單旁邊「X」關閉
  • 沒問題點擊右上角「完成」 如果點完成沒反應那可能是遇到 iOS Bug,可以不管他直接點返回回到首頁。

  • 回到捷徑自動化首頁可以查看、暫停、修改這則捷徑。

完成!

郵件的設定相對較複雜一點,因為是批次擷取所以還需要再次篩選一次,然後把篩選結果建立提醒事項。

  • 現在有新的郵件、Apple 郵件擷取完,裡面有信用卡帳單標題的話就會自動建立囉!
  • 因為 Apple 郵件是用擷取的 (非 iCloud 的話),因此信件收取也不會是即時的,會延遲一陣子。

其他

捷徑自動化執行完會跳通知,這通知無法關閉。

結束

現在已完成了幾個基礎的自動化整合功能,簡單幾個步驟節省你日常的心力;其他進階串接,例如打 API 整合到 Notion 或更複雜的整合,技術上也都能達成, 缺的不是技術是你天馬行空的自動化想法!

===

View the English version of this article here.

本文首次發表於 Medium ➡️ 前往查看



This post is licensed under CC BY 4.0 by the author.

iOS Vision framework x WWDC 24 Discover Swift enhancements in the Vision framework Session

iOS TemporaryWorkaround for Black Launch Screen Bug After Several Launches