main();
function main() {
let jsonReq = {};
if (configs.get("Text") !== "" && configs.get("Text") !== null){
jsonReq["text"] = configs.get("Text");
}
let attachment = {};
attachAdd(attachment, "Fallback", "fallback");
attachAdd(attachment, "Color", "color");
attachAdd(attachment, "Title", "title");
if (configs.get("Title") !== "" && configs.get("Title") !== null){
attachAdd(attachment, "TitleLink", "title_link");
}
attachAdd(attachment, "AttachText", "text");
if (attachment !== {}){
jsonReq["attachments"] = [attachment];
}
if (attachment["title"] == null && attachment["text"] == null && jsonReq["text"] == null){
throw "Message to send isn't set.";
}
const url = configs.get("Url");
let response = httpClient.begin()
.body(JSON.stringify(jsonReq), "application/json; charset=UTF-8")
.post(url);
const status = response.getStatusCode();
const responseTxt = response.getResponseAsString();
if (status >= 300) {
const error = "Failed to send \n status:" + status + "\n" + responseTxt;
throw error;
}
engine.log("status:" + status);
engine.log(responseTxt);
}
function attachAdd(attachment, config, attachName){
const value = configs.get(config);
if (value !== "" && value !== null){
attachment[attachName] = value;
}
}