Configurar a Estrutura de Notificação de Evento do Produtor para usar o Abrir Barramento de Mensagens

  • Versão de lançamento: Washingtondc
  • Atualizado 1 de fev. de 2024
  • 2 min. de leitura
  • Se você implantou ou planeja implantar o Open Message Bus em sua instância, deve configurar a Estrutura de Notificação de Eventos do Produtor para este message-bus. Você pode implantar este barramento de mensagens para instâncias na nuvem e no local.

    Antes de Iniciar

    Função necessária: administrador

    Para obter informações adicionais sobre a publicação de mensagens usando o barramento de mensagem, consulte Producing outbound trouble ticket notifications using the open message bus.

    Procedimento

    1. Sincronize os tópicos em seu barramento de mensagens atual com sua instância ServiceNow.

      Para obter informações adicionais sobre como sincronizar tópicos, consulte Producing outbound trouble ticket notifications using the open message bus.

    2. Personalize o método OpenMessageBusEventPublisherOOB - publicarMessageToComptibleRestProxy(objeto tmfEventPayload, matriz compatívelTopicArr) para enviar mensagens diretamente para uma ação REST pré-configurada.
      Este método é responsável por enviar uma mensagem para o proxy REST da plataforma de mensagem personalizada usando o seletor de spoke. A plataforma de mensagem personalizada é o seu barramento de mensagens por meio do qual as mensagens são publicadas.
      O exemplo de código a seguir mostra como personalizar este método para usar o fluxo do seletor de spoke e uma ação personalizada em vez de um seletor de spoke.
      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. Configure o proxy REST para os tópicos.
      Depois que o spoke é configurado, as mensagens são publicadas no proxy REST especificado para os tópicos configurados no spoke.
      1. Navegar até Todos > Seletor de spoke > Tipo de solicitação
      2. Selecione Solicitação de saída de proxy rest de tópico.
      3. Selecione a guia Definições de solicitação de integração.
      4. Crie uma entrada de definição de solicitação de integração para configurar o spoke.
        Você também pode consultar a entrada Definição de resposta do proxy REST de demonstração para obter orientação adicional.