---
sourceDocument: Xanadu API リファレンス
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/ja-JP/xanadu/api-reference

 Release :

    - xanadu

ft:locale :

    - ja-JP

ft:publication_title :

    - Xanadu API リファレンス

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

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

# 新しいトラブルチケットイベントのペイロードを生成する {#ariaid-title1}

* リリースバージョン: Xanadu
* 
* 更新日 2024年08月01日
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 所要時間：4分

トラブルチケットイベントを実装に追加する場合は、そのイベントタイプに必要な TMF 準拠のペイロードを生成する関数を作成する必要があります。さらに、このタイプのイベントレコードを処理するときは、この関数にロジックを送信する case ステートメントにその関数を追加する必要があります。

## 新しいトラブルチケットイベントのペイロードを生成するメソッドを作成します {#prd_evt_not-dev_gd-gen_evt_pay__section_b1g_m4s_b1c}

`TroubleTicketNotificationUtil` スクリプトインクルードで、新しいトラブルチケットイベントに必要な TMF 準拠のペイロードをビルドし、そのペイロードを返すメソッドを追加する必要があります。  
ベースシステムトラブルチケットイベントのペイロードを作成するメソッドの例については、 [TroubleTicketNotificationUtilOOB](https://servicenow-prod.fluidtopics.net/mT3kJU1xyv2ZB9R2LmJeWg#TroubleTicketNotifScopedAPI "TroubleTicketNotificationUtilOOB スクリプトインクルードは、トラブルチケット通知イベントの TMF 準拠のペイロードを定義および生成するために使用されるメソッドを提供します。") スクリプトインクルードの次のメソッドを参照してください。

* [generateCreateTroubleTicketEventPaylaod()](https://servicenow-prod.fluidtopics.net/mT3kJU1xyv2ZB9R2LmJeWg#TTNUO-genCreateTTEvtPay_O_S_S "関連するインシデントのトラブルチケットの作成イベントタイプの TMF 準拠のペイロードを構築します。")
* [generateCreateTroubleTicketEventPaylaodForCase()](https://servicenow-prod.fluidtopics.net/mT3kJU1xyv2ZB9R2LmJeWg#TTNUO-genCreateTTEvtPayCase_O_S_S "関連付けられたケースのトラブルチケット作成イベントタイプの TMF 準拠のペイロードを構築します。")
* [generateTroubleTicketAttributeChangePayload()](https://servicenow-prod.fluidtopics.net/mT3kJU1xyv2ZB9R2LmJeWg#TTNUO-genTTAttChgPay_O_S_S "インシデントイベントタイプのトラブルチケット属性変更イベントの TMF 準拠のペイロードを構築します。")
* [generateTroubleTicketStatusChangePayload()](https://servicenow-prod.fluidtopics.net/mT3kJU1xyv2ZB9R2LmJeWg#TTNUO-genTTStatChgPay_O_S_S "インシデントイベントタイプの関連するトラブルチケットステータス変更イベントの TMF 準拠のペイロードを構築します。")
{#prd_evt_not-dev_gd-gen_evt_pay__ul_urf_xfw_c1c}

## fetchEventHandlerAndCreateTMFEvent() スイッチ/ケースロジックにイベントを追加する {#prd_evt_not-dev_gd-gen_evt_pay__section_ifc_fps_b1c}

作成した関数を実行するには、EventProcessorUtil スクリプトインクルードの fetchEventHandlerAndCreateTMFEvent() メソッド内の `switch/case` ロジックにその関数を追加する必要があります。次のコード スニペットは、このメソッドに `ResolveTroubleTicketEventForIncident` イベントの種類を追加するために必要な更新を示しています。fetchEventHandlerAndCreateTMFEvent() メソッドの詳細については、「[EventProcessorUtilOOB:fetchEventHandlerAndCreateTMFEvent(オブジェクトeventSnapshot、文字列、eventType、文字列、eventId)](https://servicenow-prod.fluidtopics.net/qCwbyqQIsmYRS9mRko8AIA#EPUO-FetEvHandCreatTMFEv_O_S_S "イベントタイプに基づいてペイロードジェネレーターを呼び出すことで、渡された生のイベントオブジェクトを TMF 準拠のイベントオブジェクトに変換します。")」を参照してください。

    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;
    },


