Konfigurieren Sie das Framework für Ersteller-Event-Benachrichtigungen für die Verwendung von Open Message Bus

  • Freigeben Version: Washingtondc
  • Aktualisiert 1. Februar 2024
  • 1 Minute Lesedauer
  • Wenn Sie Open Message Bus in Ihrer Instanz bereitgestellt haben oder bereitstellen möchten, müssen Sie das Producer Event Notification Framework für diesen Nachrichtenbus konfigurieren. Sie können diesen Nachrichtenbus sowohl für Cloud- als auch für lokale Instanzen bereitstellen.

    Vorbereitungen

    Erforderliche Rolle: admin

    Weitere Informationen zum Veröffentlichen von Nachrichten mit dem offenen Nachrichtenbusfinden Sie unter Producing outbound trouble ticket notifications using the open message bus.

    Prozedur

    1. Synchronisieren Sie die Themen in Ihrem aktuellen Nachrichtenbus mit Ihrer ServiceNow -Instanz.

      Weitere Informationen zum Synchronisieren von Themen finden Sie unter Producing outbound trouble ticket notifications using the open message bus.

    2. Passen Sie die Methode OpenMessageBusEventPublisherOOB – veröffentlichenMessageToComptibleRestProxy(Object tmfEventPayload, Array kompatibelTopicArr) an, um Nachrichten direkt an eine vorkonfigurierte REST-Aktion zu senden.
      Diese Methode ist für das Senden einer Nachricht an den REST-Proxy der benutzerdefinierten Nachrichtenplattform mithilfe der Spoke-Auswahl verantwortlich. Die benutzerdefinierte Nachrichtenplattform ist Ihr Nachrichtenbus, über den Nachrichten veröffentlicht werden.
      Das folgende Codebeispiel zeigt, wie diese Methode angepasst wird, um den Spoke-Auswahl-Flow und eine benutzerdefinierte Aktion anstelle einer Spoke-Auswahl zu verwenden.
      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);
          }
        }
      },
    3. Konfigurieren Sie den REST-Proxy für die -Themen.
      Nachdem die Spoke konfiguriert wurde, werden Nachrichten im angegebenen REST-Proxy für in der Spoke konfigurierte Themen veröffentlicht.
      1. Navigieren zu Alle > Spoke-Auswahl > Anforderungstyp
      2. Wählen Sie Ausgehende Anforderung des Themen-REST-Proxy aus.
      3. Wählen Sie die Registerkarte Definitionen der Integrationsanforderung aus.
      4. Erstellen Sie einen Definitionseintrag für die Integrationsanforderung, um die Spoke zu konfigurieren.
        Weitere Anleitungen finden Sie auch im Demo-REST-Proxy-Antwortdefinitionseintrag.