Generiert die Nutzlast für ein neues Problemticket-Ereignis

  • Freigeben Version: Yokohama
  • Aktualisiert 30. Januar 2025
  • 1 Minute Lesedauer
  • Wenn Sie Ihrer Implementierung ein Problemticket-Ereignis hinzufügen, müssen Sie eine Funktion erstellen, die die erforderliche TMF-konforme Nutzlast für diesen Ereignistyp generiert. Außerdem müssen Sie diese Funktion der case-Anweisung hinzufügen, die die Logik an diese Funktion weiterleitet, wenn diese Art von Ereignisdatensatz verarbeitet wird.

    Erstellen Sie eine Methode, die die Nutzlast für das neue Problemticket-Ereignis generiert

    In der Skripteinbindung TroubleTicketNotificationUtil müssen Sie eine Methode hinzufügen, die die erforderliche TMF-konforme Nutzlast für das neue Problemticket-Ereignis erstellt, und diese Nutzlast dann zurückgeben.

    Beispiele für Methoden, die Nutzlasten für die Basissystem-Problemticket-Ereignisse erstellen, finden Sie unter den folgenden Methoden in der Skripteinbindung TroubleTicketNotificationUtilOOB :

    Fügen Sie das Ereignis der Switch-/Falllogik fetchEventHandlerAndCreateTMFEvent() hinzu

    Damit die von Ihnen erstellte Funktion ausgeführt werden kann, müssen Sie sie in der Switch-/Case -Logik innerhalb der Methode fetchEventHandlerAndCreateTMFEvent() der Skripteinbindung EventProcessorUtil hinzufügen. Der folgende Codeausschnitt zeigt die Updates, die erforderlich sind, um dieser Methode den Ereignistyp ResolveTroubleTicketEventForIncident hinzuzufügen. Einzelheiten zur Methode fetchEventHandlerAndCreateTMFEvent() finden Sie unter EventProcessorUtilOOB - fetchEventHandlerAndCreateTMFEvent(Object eventSnapshot, Zeichenfolge eventType, Zeichenfolge eventId).
    fetchEventHandlerAndCreateTMFEvent: function(eventSnapshot, eventType, eventId) {
      var eventPayload;
      switch (eventType) {
        case Constants.EVENT_TYPES.TROUBLE_TICKET_STATUS_CHANGE:
          eventPayload = new sn_ind_tsm_sdwan.TroubleTicketNotificationUtil().generateTroubleTicketStatusChangePayload(eventSnapshot, eventType, eventId);
          break;
    
        case Constants.EVENT_TYPES.TROUBLE_TICKET_CREATE:
          eventPayload = new sn_ind_tsm_sdwan.TroubleTicketNotificationUtil().generateCreateTroubleTicketEventPaylaod(eventSnapshot, eventType, eventId);
          break;
    
        case Constants.EVENT_TYPES.TROUBLE_TICKET_ATTRIBUTE_CHANGE:
          eventPayload = new sn_ind_tsm_sdwan.TroubleTicketNotificationUtil().generateTroubleTicketAttributeChangePayload(eventSnapshot, eventType, eventId);
          break;
    
        case Constants.EVENT_TYPES.TROUBLE_TICKET_CREATE_FOR_CASE:
          eventPayload = new sn_ind_tsm_sdwan.TroubleTicketNotificationUtil().generateCreateTroubleTicketEventPaylaodForCase(eventSnapshot, eventType, eventId);
          break;
    
        // Add a new case statement for the ResolveTroubleTicketEventForIncident event type
        case 'ResolveTroubleTicketEventForIncident':
          eventPayload = new sn_ind_tsm_sdwan.TroubleTicketNotificationUtil().generateResolveTroubleTicketEventPyaload(eventSnapshot, eventType, eventId);
          break;
    
        default:
          this._logger.debug("Event with id " + eventId + " could not find the matching payload generator");
          eventPayload = null;
      }
      return eventPayload;
    },