トリガーの使用

日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

トリガーの使いやすさとパフォーマンスを向上させるには、次のベスト プラクティスに従ってください。

  • アクション レベルでタイムアウトを使用します。アクションが失敗するたびに、またはアクション・レベルでタイムアウトを超えた場合、トリガーは再呼び出されます。デフォルトでは、トリガーの最大再試行回数は3に設定されています。これを変更するには、Sitecore Content HubでActionsConfigurationの設定を変更する必要があります。

  • Azure Functionを呼び出すようにAPI Call Actionを設定するには、HttpTrigger Azure Functionを使用し、アクションに関数のURLを指定します。このURLは、Azure関数がデプロイされているAzure portalで確認できます。

  • Content HubとAzure Functionの間の接続を検証するには、必ずHEAD要求ヘッダーを使用してください。これは、関数レベルで構成できます。「 Test connection」をクリックすると、指定したURLにHEADリクエストが送信されます。

    public static async Task HttpResponseMessage Run([HttpTrigger(AuthorizationLevel.Function, "head", "post", Route = null)]HttpRequestMessage req, TraceWriter log)
    {
    // Allow head request to test connectivity with the Markting Content Hub
     if (req.Method == HttpMethod.Head) return req.CreateResponse(HttpStatusCode.OK);
    }
  • アクションとしてAzure Service Busを選択すると、Content Hubからのメッセージ (つまり、詳細イベント) は、アクションで接続の詳細が提供されているAzure Service Busキューに配置されます。

  • サポートされている方法は、GET、PUT、およびPOSTです。要求ヘッダーは、要求ごとに渡されます。PUTまたはPOSTを使用する場合、要求本文にはイベントまたはメッセージの詳細な概要も含まれます (SaveEntityMessageまたはDeleteEntityMessage)。これはシリアル化されたJSON文字列です。

    • SaveEntityMessageの例:

      {
        "saveEntityMessage": {
          "MessageId": 0,
          "IsNew": false,
          "TargetId": 6334,
          "TargetIdentifier": "FLikN0zW8EGZaaUQedirJA",
          "UserId": 6,
          "Version": 12,
          "TargetDefinition": "M.Asset",
          "ChangeSet": {
            "Culture": "(Default)",
            "PropertyChanges": [{
              "Property": "ReleaseDate",
              "Type": "System.DateTime",
              "OriginalValue": "2017-12-04T08:17:59.178",
              "NewValue": "2017-12-24T08:29:08.297Z"
            }],
            "RelationChanges": [],
            "OriginalInheritsSecurity": true,
            "NewInheritsSecurity": true,
            "OriginalIsRootTaxonomyItem": false,
            "NewIsRootTaxonomyItem": false
          },
          "TimeStamp": "2017-12-11T08:30:12.2817117Z",
          "EventType": "EntityUpdated"
        }
      }
    • DeleteEntityMessageの例:

      {
        "deleteEntityMessage": "{
        \"MessageId\":0,
        \"TargetId\":7932,
        \"TargetIdentifier\":\"2iil0h79OUKZ3WmgaVCxiA\",
        \"TargetLabel\":\"497632384.mp4\",
        \"UserId\":7469,
        \"TargetDefinition\":\"M.Asset\",
        \"EventType\":\"EntityDeleted\"}"
      }
この記事を改善するための提案がある場合は、 お知らせください!