【发布时间】:2018-01-28 16:29:03
【问题描述】:
我创建了一个机器人,只要在特定的 Slack 频道中发布消息,它就会自动更新 Google 表格。
现在我想在电子表格中将任务标记为已完成时向 Slack 发送一条消息。
我想在特定列中运行一个循环来检查每次编辑是否该列中任何单元格的值已更改为“已完成”并将该行中的文本发送到 Slack。
我无法解决的问题是如何检查特定消息过去是否被标记为“已完成”并且不将该消息发送到 slack。
有什么建议吗?
var SLACK_WEBHOOK_URL= "";
function pushToSlack() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName("Sheet1");
var data = sheet.getDataRange().getValues();
data.splice(parseInt(0), 1); // remove the first header row
for (var i in data) {
var indicator = data[i][1];
var update = data[i][2];
var ongoing = data[i][6];
if (!ongoing) { continue; }
sendToSlack(indicator,update,ongoing);
}
}
function sendToSlack(indicator,update,ongoing) {
var payload = {
"text" : ":update_" + indicator + ": ISSUE RESOLVED:" + update
};
var options = {
"method" : "post",
"contentType" : "application/json",
"payload" : JSON.stringify(payload)
};
// push to slack channel
return UrlFetchApp.fetch(SLACK_WEBHOOK_URL, options);
}
【问题讨论】:
标签: google-sheets google-sheets-api slack slack-api