常見問題
遇到問題了嗎?不用擔心,答案都在這。
分類目錄
全站搜尋

    n8n 串接範例:設定排程,在指定時間自動觸發 Ragic 動作按鈕

    目錄

    步驟 1:準備 n8n 環境

    步驟 2:設計表單與按鈕

    步驟 3:設定 n8n 觸發節點

    步驟 4:「搜尋資料」動作端

    步驟 5:拆分符合條件的資料

    步驟 6:觸發動作按鈕

    步驟 7:測試並發佈自動化流程

    說明:你可以透過 Ragic AI Agent 的排程功能,讓 Agent 在指定時間執行動作按鈕,達成類似的效果。如果你希望可以自己調整、設定更細部的流程,或學習、測試如何使用 n8n 自建應用,可以參考這篇文章的方法。

    在 Ragic,只要設計適合的動作按鈕,你就可以一鍵完成寄信、拋轉資料等操作。但如果這些動作必須在「每天早上 10 點」或是「到期前 7 天」執行、還要有人記得去按,就容易漏掉。

    如果你有這樣的需求,除了使用 AI Agent 設計排程以外,還能藉由 n8n 串接,可以依靠簡單的拖拉、設定自動化執行讀取資料、觸發動作按鈕等操作,製作一組像是下圖這樣的自動化流程:每天自動找出符合條件的資料,並幫你按下每一筆資料裡的按鈕。

    只要你的表單上有一個日期欄位和一顆動作按鈕,就能套用這個做法。像是在合約到期前自動寄出續約提醒信;在每月 1 日自動把上個月的訂單轉換為請款單;或是在保固到期前寄簡訊通知客戶。

    在這篇文章,我們將以一張活動報名表為例:在活動日期前 3 天的下午 2 點,自動按下「寄送行前通知」按鈕,寄一則 LINE 訊息給參與者。如果你要觸發的是其他按鈕,只要在最後一個步驟更換想觸發的按鈕即可。

    你可以點擊這裡下載我們已設計好的自動化流程,把它匯入到你自己的 n8n 內,再參考我們後續的設計步驟進行調整,讓自動化流程能夠在你的 n8n 和表單中運作。

    步驟 1:架設 n8n 並安裝 Ragic Nodes

    請參考這裡的設定步驟,架設一個自託管的 n8n 伺服器,並安裝我們開發的 Ragic Nodes。

    步驟 2:設計表單並準備要觸發的按鈕

    你可以依照需求設計表單,以活動報名為例,你的表單可能會長得像是這樣:

    在這個應用中,我們建議你建立一個欄位直接記錄「哪一天要寄出通知」。你可以透過公式參照活動日期來完成,舉例來說,我們的「行前通知日」就被設定為 A6 - 3,代表活動日期的 3 天前:

    接下來,設計你需要觸發的動作按鈕。假設我們需要寄送一則 LINE 訊息提醒參與者「活動日期快到了」,就可以選擇建立一個傳送即時訊息。

    最後請記得先建立一筆測試資料:

    步驟 3:在 n8n 設定觸發節點與日期格式

    為了做到「每天指定時間檢查資料」,我們將使用 n8n 上的 Schedule Trigger(排程觸發)作為觸發端。

    以「每天下午 2 點觸發一次」為例,請將該節點設定成如下圖這樣:重複間隔為「天」、每次觸發相隔 1 天、在下午 2 點 0 分時觸發。

    接下來,由於我們將拿觸發的「日期」來比對 Ragic 的活動報名表單裡,是否有資料的「行前通知日」與觸發日期相符。為此,我們需要將兩者的格式統一。請使用 Date & Time 節點中的「Format a Date」,參考以下設定,將日期調整為與 Ragic 相同的格式:

    接下來,直接觸發一次自動化流程,就能檢查格式是否被正確轉換了:

    步驟 4:設定「搜尋資料」動作端

    接下來,我們要藉由 Date & Time 回傳的日期,請 n8n 在我們的表單中搜尋符合的資料。

    請在 n8n 上使用 Ragic 節點的 readData 動作,在連結 Ragic 帳號之後,你會看到 Form 列表中出現資料庫內的表單,並且在選取表單之後,就能夠在 Filters 選擇要參照的欄位。

    選取「行前通知日」後,確保 Operand 是 Equals(相等),就能將先前 Date & Time 輸出的日期拖進 Condition 了。

    完成設定之後,請先建立幾筆符合條件的資料,再觸發一次自動化流程,確定該節點有作用,也提供後續設定的基礎。

    步驟 5:拆分符合條件的資料

    當我們請 n8n 去 Ragic 查詢資料時,Ragic 會把所有找到的結果打包成一整袋(在程式裡稱為一個物件),即便袋子裡其實只有一筆資料也一樣。但 n8n 習慣把資料像排隊一樣,一筆一筆分開處理(在程式裡稱為陣列)。

    為了讓 n8n 更容易執行後續操作,我們需要先幫它「拆包裹」,把 Ragic 打包好的資料拆開,變成一筆筆獨立的排隊資料。為此,請直接建立一個 Code 節點,並設定語言為 Javascript,直接複製並貼上以下這段轉換代碼:

    const data = $input.first().json;
    const result = [];
    // 抓取 Object 中的所有 key (例如 "1", "2") 並將裡面的內容推入陣列
    for (const key of Object.keys(data)) {
    result.push({
    json: data[key]
    });
    }
    return result;

    設定完後,看起來會像是這樣:

    完成設定後,你可以用先前測試的多筆要同一天發通知的資料,觸發一次自動化流程。

    你可以看到,原本 Ragic 的「1 item」在程式碼的處理後,變成了「4 items」,代表這段程式碼確實有將 Ragic 傳給它的袋子拆開,把裡面的資料拿出來。

    步驟 6:觸發資料內的動作按鈕

    完成多個節點的前置作業之後,就可以交給 n8n 觸發動作按鈕囉!在這個動作節點中,請將動作設為「Execute Action Button」,在連結 Ragic 帳號後,Form 就會顯示資料庫內的表單,選擇表單之後,就能夠看到表單內的動作按鈕了。

    接下來,將前一個節點的「_ragicId」拖進 Record Index,這會讓 n8n 在試圖觸發動作按鈕時,知道應該要在哪一筆資料執行按鈕。

    完成設定之後,整個 n8n 的自動化流程就完成囉!

    步驟 7:測試並發佈自動化流程

    現在,你可以再次手動從頭開始測試自動化流程是否如預期運作。

    不過若要確認的是「排程是否運作」,需要直接透過右上角的 Publish,發佈你的自動化流程。

    首先,確保表單內有建立「今天」應該觸發的資料:

    接下來,等待原先設定的時間到來,或者直接在 n8n 上點擊 Execute Workflow 後,就可以在 n8n 中查看運作紀錄,舉例來說,下圖顯示了這個自動化流程在 10 月 30 日的下午 2 點觸發了一次:

    而我們先前建立的測試資料也成功被抓到,在自動化流程觸發時,確實寄了一則 LINE 訊息給我們。

    提供回饋給 Ragic

    請告訴我們您的意見:(多選, 必填)

    請針對上方勾選項目提供詳細說明:

    截圖能夠讓我們更清楚了解您的建議:

    感謝您的寶貴意見!

    馬上註冊
    免費試用 Ragic!

    用 Google 帳號註冊

    立即科技 Ragic, Inc.
    02-7728-8692
    info@ragic.com
    台北市中正區南昌路二段81號9樓
    使用者條款 | 隱私權政策