建立一個 報表輸出模組,能夠將每日或每週收集到的安全新聞與漏洞資訊,自動轉換成 CSV / PDF 報表,並以 Email 或 Teams 傳送,同時可搭配 Google Sheets 做歷史紀錄。
輸入:Google Sheets、即時通知模組輸出的原始資料。
處理:
輸出:
這裡使用GoogleSheet內的Apps Script,每天免費配額 50 次,不需要額外開API讓其他程式Trigger
因為huggingface有鎖發送至Discord,因此先發到GoogleSheet再用Script發送,這流程也有一個好處資料會存在GoogleSheet,其他情資也可以比造作法
N8N(huggingface) -X> Discord
N8N(huggingface) -> GoogleSheet -> Apps Script -> Discord
function sendNewRowsToDiscord() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("工作表1");
var data = sheet.getDataRange().getValues();
// 取出上次紀錄的最後一列
var scriptProperties = PropertiesService.getScriptProperties();
var lastRow = Number(scriptProperties.getProperty("lastRow")) || 0;
var currentRows = data.length;
if (currentRows > lastRow) {
var newRows = data.slice(lastRow);
newRows.forEach(function(row) {
var msg = row.join(" | ");
UrlFetchApp.fetch("https://discord.com/你的Webhooks", {
method: "post",
contentType: "application/json",
payload: JSON.stringify({ content: "📢 新增資料: " + msg })
});
});
scriptProperties.setProperty("lastRow", currentRows);
}
}
GoogleSheet有異動時執行
發送至Discord