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

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

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

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

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

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

    作成した関数を実行できるようにするには、EventProcessorUtil スクリプトインクルードの fetchEventHandlerAndCreateTMFEvent() メソッド内のスイッチ/ケースロジックにその関数を追加する必要があります。次のコードスニペットは、このメソッドに 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;
    },