新しいトラブルチケットイベントのペイロードを生成します

  • リリースバージョン: Yokohama
  • 更新日 2025年01月30日
  • 所要時間:4分
  • トラブルチケットイベントを実装に追加する場合は、そのイベントタイプに必要な TMF 準拠のペイロードを生成する関数を作成する必要があります。さらに、このタイプのイベントレコードを処理する場合は、ロジックをこの関数に指示する case ステートメントにその関数を追加する必要があります。

    新しいトラブルチケットイベントのペイロードを生成するメソッドを作成します

    TroubleTicketNotificationUtil スクリプトインクルードで、新しいトラブルチケットイベントに必要な TMF 準拠のペイロードを構築し、そのペイロードを返すメソッドを追加する必要があります。

    ベースシステムのトラブルチケットイベントのペイロードを作成するメソッドの例については、 TroubleTicketNotificationUtilOOB スクリプトインクルードの次のメソッドを参照してください。

    fetchEventHandlerAndCreateTMFEvent() スイッチ/ケースロジックにイベントを追加します

    作成した関数を実行するには、EventProcessorUtil スクリプトインクルードの fetchEventHandlerAndCreateTMFEvent() メソッド内の switch/case ロジックに関数を追加する必要があります。次のコード スニペットは、このメソッドに ResolveTroubleTicketEventForIncident イベントの種類を追加するために必要な更新を示しています。fetchEventHandlerAndCreateTMFEvent() メソッドの詳細については、EventProcessorUtilOOB:fetchEventHandlerAndCreateTMFEvent(オブジェクト eventSnapshot、文字列 eventType、文字列 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;
    },