인스턴스에 Open Message Bus를 배포했거나 배포할 계획인 경우 이 메시지 버스에 대한 생성자 이벤트 알림 프레임워크를 구성해야 합니다. 이 메시지 버스는 클라우드와 온프레미스 인스턴스 모두에 배포할 수 있습니다.
프로시저
-
현재 메시지 버스의 주제를 인스턴스와 동기화합니다 ServiceNow .
-
미리 구성된 REST 동작에 직접 메시지를 보내도록 메서드를 사용자 지정합니다 OpenMessageBusEventPublisherOOB - publishMessageToComptibleRestProxy(객체: tmfEventPayload, 배열: compatibleTopicArr) .
이 메서드는 스포크 선택기를 사용하여 사용자 지정 메시지 플랫폼의 REST 프록시에 메시지를 보내는 작업을 담당합니다. 사용자 지정 메시지 플랫폼은 메시지가 게시되는 메시지 버스입니다.
다음 코드 예제에서는 스포크 선택기 흐름 및 스포크 선택기 작업 대신 사용자 지정 작업을 사용하도록 이 메서드를 사용자 지정하는 방법을 보여줍니다.
publishMessageToComptibleRestProxy: function(tmfEventPayload, compatibleTopicArr) {
if (gs.nil(tmfEventPayload) || gs.nil(compatibleTopicArr)) {
return;
}
for (var i = 0; i < compatibleTopicArr.length; i++) {
// Invoking spoke selector flow which will in turn pick the rest proxy based on the input condition
var topicGr = new GlideRecord(Constants.TABLE_TOPIC);
topicGr.get(compatibleTopicArr[i]);
if (!topicGr.isValidRecord()) {
this._logger.debug("Invalid topic sys_id passed to open message publisher. Sys_id passed is " + compatibleTopicArr[i]);
return;
}
// NOTE THAT IN THIS IMPLEMENTATION INVOKES A CUSTOM ACTION INSTEAD OF SPOKE SELECTOR
var restProxyResponse = new sn_appss.RequestAPI(spokeSelectorRequestTypeId, spokeSelectorRequestTypeInputMap, spokeSelectorRequestTypeContextObject).execute();
// var restProxyResponse = sn_fd.FlowAPI.executeActionQuick('sn_api_notif_mgmt.demo_topic_rest_proxy_response', spokeSelectorRequestTypeInputMap);
var responseCode = restProxyResponse.response.code;
if (Constants.REGISTRATION_RESPONSE_SUCCESS_CODES.indexOf(responseCode) == -1) {
this._logger.logErr("Publishing message to Message bus rest proxy failed with HTTP response code " + responseCode);
}
}
},
-
주제에 대한 REST 프록시를 구성합니다.
스포크가 구성되면 스포크에 구성된 주제에 대해 지정된 REST 프록시에 메시지가 게시됩니다.
-
다음으로 이동
-
주제 REST 프록시 아웃바운드 요청을 선택합니다.
-
통합 요청 정의 탭을 선택합니다.
-
통합 요청 정의 항목을 생성하여 스포크를 구성합니다.
데모 REST 프록시 응답 정의 항목에서 추가 지침을 참조할 수도 있습니다.