由於 LINE Notify 服務於 2025/3/31 終止,本文採用 LINE 推播訊息替代 LINE Notify 服務,實作《AI 流程自動化超 Easy》書上 2-2 節的範例,請確認您已經:
依照〈在 make.com 中測試用 LINE 推播訊息發送通知〉測試完成可以發送 LINE 推播訊息。
依照〈在 make.com 中使用 Instagram for Business App〉設置好可以監看 Instagram 新貼文的模組。
這樣就可以設計這一節的範例:
加入可傳送 LINE 推播訊息的模組:image按一下模組右側的 +:image在搜尋欄位輸入 "line" 後選取 LINE App:image選取 Send a Push Message 模組。
建立可以發送訊息的 LINE 連線:image
LINE Notify 服務在 2025 年 3 月底停止服務,由於 LINE 是台灣地區每個人都在使用的服務,在考量不需要額外安裝 App 的情況下,能夠沿用 LINE 設計類似的訊息通知服務是最好的解法。我們將帶大家改用 LINE 聊天機器人作為替代方案。
基本概念
要建立 LINE 聊天機器人,必須建立 LINE 官方帳號,也就是代表該機器人的帳號。有了官方帳號後,就可以設計後端程式透過 LINE Messaging API 被動回應使用者訊息或是主動發送推播訊息:
被動回覆訊息:這是由使用者發送訊息給官方帳號,再由後端程式接收後以官方帳號身分回覆給使用者。我們必須建立能讓官方帳號與後端程式互傳資料的通道(channel),才能讓訊息在兩者之間往返。
主動發送推播訊息:由我們的程式以 LINE 官方帳號身分直接傳送訊息給使用者或群組,這需要透過使用者的 LINE User Id 或是群組的 LINE group Id(這跟加聯絡人時看到的 LINE Id 是不一樣的東西)指定傳傳送對象。
雖然我們只需要主動發送推播訊息就可以達成 LINE Notify 的單向通知功能,不過因為需要先取得 LINE user/group Id,這項資訊只能透過接收使用者送來的訊息得知,所以我們幫大家設計好一個後端程式,不論收到什麼訊息,都只會回覆使用者的 LINE user/group Id。
要使用 OpenAI API,必須註冊 OpenAI 帳戶,並且建立 API 金鑰,本文就說明實際的步驟,由於網路服務常會更改,若遇到操作畫面不一樣時,請自行變通操作。
註冊帳戶與建立金鑰
瀏覽 platform.openai.com 網頁:image按右上角或頁面中間的 Sign up:image建議使用 Google 或是其它帳戶註冊。:::info
如果使用電子郵件地址註冊,會需要額外的電子郵件認證程序,你會收到以下這樣的信件:image請自行完成驗證程序。
:::
完成基本註冊後會要求提供使用者資訊:image請填入相關資訊後按繼續:
使用 OpenAI API 時都是透過 API 金鑰認證,它會要求你先建立組織:image請自行填入你的組織名稱(只能使用英數字),選擇最適合你的技術能力描述後按 Create organization。接著會看到送出邀請信給團隊成員的畫面:image這裡我們先按 I'll invite my team later 等以後需要時再處理即可。接著就是建立 API 金鑰的步驟::image請幫你的 API 金鑰取名字,這個名字只是方便你自己識別,你可以自由命名,之後可以分派不同的金鑰給不同團隊成員使用,並針對個別金鑰限制使用量。專案名稱也請自由命名,便於管理不同專案使用的金鑰。填好後請按 Generate API Key 建立金鑰:image你會看到建立好的金鑰,請按 Copy 將 API 金鑰複製後記錄在別的地方,畫面下方是提供測試取用 API 的範例,請切換到 Python 頁次::::danger
請特別留意,以下的交談窗會在你按 Done 之後關閉,之後就無法再看到完整的金鑰,所以在你關閉交談窗前,請務必複製金鑰並記錄下來。
:::image按一下下方程式碼窗格右上角的複製鈕後,瀏覽 Google 的 Colabimage:::info
由於原本手冊上查詢國際太空站掠過特定位置時間的 API 已經停止服務,所以本文改成使用查詢國際太空站目前位置的 API,並試圖透過另一個 API 找出離該位置最近的城市名稱。
國際太空站目前的位置
提供國際太空站目前位置的 API 網址如下:
http://api.open-notify.org/iss-now.json
呼叫後會得到以下(整理過格式)的結果:
{
在 8-1 節中我們使用了查克羅禮士笑話 API的範例, 不過該網站似乎已經停止服務了, 你可以改用另外一個網站來練習, 這個網站的網址為 https://official-joke-api.appspot.com/random_joke, 他回傳回以下 JSON 格式的笑話:
{
"type": "general",
"setup": "Is there a hole in your shoe?",
"punchline": "No… Then how’d you get your foot in it?",
"id": 149
}
其中 setup 是埋梗, punchline 就是笑點, 不過對於不是英文為母語的人來說, 可能沒那麼好笑就是了, 像是上面的笑話就是: