我需要集成servicenow和slack,這有助於將高警報和重要的P1警報發送到冗餘通道。ServiceNow與slack的集成
我在尋找可以完成的服務,以使serviceNow與slack集成。
請建議。
我需要集成servicenow和slack,這有助於將高警報和重要的P1警報發送到冗餘通道。ServiceNow與slack的集成
我在尋找可以完成的服務,以使serviceNow與slack集成。
請建議。
你應該創造的ServiceNow業務規則上插入/更新。
條件: 優先級= 1個或優ChangesTo 1
高級/腳本:
var request = new sn_ws.RESTMessageV2('SLACK_EndpointURL', 'POST');
request.setRequestHeader("Accept","application/json");
request.setRequestHeader('Content-Type','application/json');
//OR METHOD # request.setEndpoint('SLACK_EndpointURL');
// Your message
var reqBody = '{\"text\":\"This is a line of text.\nAnd this is another one.\"}';
request.setRequestBody(reqBody);
var response = request.execute();
var responseBody = response.getBody();
//See response in System Logs # gs.log(responseBody);
您可以簡單地使用`編寫基於REST的集成。還有什麼你需要知道的,或者你想要的東西?
有多種方式可以整合ServiceNow和Slack。但是,對於您的案例,一個簡單而直接的方法是在Slack中創建一個提供URL的Incoming WebHook,並且您需要從ServiceNow實例執行的操作是將JSON發佈到該URL。
您可以找到有關創建和定製這裏斯萊克網絡掛接更多的細節:https://api.slack.com/incoming-webhooks
你可以使用一個BR與所需的條件來觸發。該函數將我們的消息發佈到Slack。端點是在農閒創建入站網絡掛接地址:
function postMessage(inPayload, inEndpoint, inTimeout) {
var sResponseBody = '', nResponseCode = 0, sResponseMessage = '', sResponseEndpoint = '', sResponseHeaders = [];
var rest = new sn_ws.RESTMessageV2();
rest.setEndpoint(inEndpoint);
rest.setHttpTimeout(inTimeout);
rest.waitForResponse(inTimeout);
rest.setRequestHeader('Content-Type', 'application/json');
rest.setRequestHeader('Accept', 'application/json');
rest.setHttpMethod('post');
rest.setRequestBody(inPayload);
for (var i = 0; i < 3; i++) {
try {
var response = rest.execute();
sResponseBody = response.getBody();
nResponseCode = response.getStatusCode();
sResponseEndpoint = response.getEndpoint();
sResponseHeaders = response.getRequestHeaders();
break;
} catch(err) {
sResponseMessage = err.getMessage();
gs.sleep(5000);
}
}
return {"ResponseCode":nResponseCode,"ResponseBody":sResponseBody,"ResponseMessage":sResponseBody,"ResponseEndpoint":sResponseEndpoint, "ResponseHeaders":sResponseHeaders};
}
這會告訴你如何創建入站網絡掛接: https://api.slack.com/incoming-webhooks
下面是我們用一個例子有效載荷。 $ {tags}是我們用來從源工單獲取價值的簡單宏。你可以簡單地在無線電通信中進行散步。
{
"username":"${SlackUsername}",
"attachments":[{
"title":"Short description",
"title_link":"${URL}",
"text":"${ShortDescription}",
"fallback":"${ShortDescription}",
"color":"${Color}",
"footer":"${SlackUsername}",
"fields":[
{"title":"State","value":"${State}","short":true},
{"title":"Priority","value":"${Priority}","short":true},
{"title":"Assignment group","value":"${AssignmentGroup}","short":true},
{"title":"Assigned to","value":"${AssignedTo}","short":true},
{"title":"Technical Service","value":"${TechnicalService}","short":true},
{"title":"Configuration item","value":"${ConfigurationItem}","short":true},
{"title":"Details","value":"${Description}","short":false}
],
"ts":"${TimeStampEpoch}"
}
]
}
對於信息: 我們使用自定義表設置爲觸發後懈怠的條件。用戶可以根據需要簡單地創建自己的過濾器。使用的端點是用戶提供的入站webhook。 異步業務規則在任務上運行,以根據需要審查條件和操作。
當前的工作是使用Slack應用程序,因此我們可以通過頻道ID發佈到任何頻道。這意味着我們不會冒有人創建入站webhook然後離開公司的問題。
我正在尋找幫助我將SERVICENOW與SLACK集成在一起的步驟,並將高度和重要的P1警報發送到鬆弛通道。 - 謝謝! – suboss87