4.11. テンプレートステップの追加

フローでは、テンプレートステップはソースからデータを取得し、Fuse Online にアップロードするテンプレートで定義された形式に挿入します。テンプレートステップの利点は、指定した一貫性のある形式でデータの出力を提供できることです。

テンプレートでは、プレースホルダーを定義して静的テキストを指定します。フローの作成時に、テンプレートステップを追加してソースフィールドをテンプレートプレースホルダーにマップし、テンプレートコンテンツをフローの次のステップにマップします。Fuse Online がフローを実行するとき、マップされたソースフィールドにある値がテンプレートのインスタンスに挿入されるため、フローの次のステップで利用できるようになります。

フローにテンプレートステップが含まれる場合、そのフローの唯一のテンプレートステップとなる可能性が高くなります。ただし、フローに複数のテンプレートステップを含めることも可能です。

Fuse Online は、FreemarkerMustache、および Velocity のテンプレートをサポートします。

前提条件

  • フローを作成または編集する必要があります。
  • シンプルなインテグレーションを作成する場合は、すでに最初と最後のコネクションがある必要があります。

手順

  1. フロービジュアライゼーションのテンプレートステップを追加する場所で Plus Sign をクリックします。
  2. Template をクリックします。Upload Template ページが開きます。
  3. Freemarker、Mustache、または Velocity をテンプレートタイプとして指定します。
  4. テンプレートを定義するには、以下のいずれかを行います。

    • テンプレートファイルまたはテンプレートを作成するために編集するテキストが含まれるファイルを、テンプレートエディターにドラグアンドドロップします。
    • browse to upload をクリックしてファイルを選択し、アップロードします。
    • テンプレートエディターで、テンプレートを定義します。
  5. テンプレートエディターでは、テンプレートが Fuse Online で使用できるようにしてください。有効なテンプレートの例は、この手順の後に記載されています。Fuse Online では、構文エラーが含まれる行の左側に a red error indicator が表示されます。構文エラーインジケーターにマウスオーバーすると、エラーを解決するためのヒントが表示されます。
  6. Done をクリックして、フローにテンプレートステップを追加します。

    Done ボタンが有効でない場合は、修正する必要のある構文エラーが 1 つ以上存在します。

    テンプレートステップへの入力は、JSON オブジェクトの形式である必要があります。そのため、データマッピングステップをテンプレートステップの前に追加する必要があります。

  7. テンプレートステップの前にデータマッパーステップを追加するには、以下を行います。

    1. フロービジュアライゼーションで、先ほど追加したテンプレートステップの直前にある Plus Sign をクリックします。
    2. Data Mapper をクリックします。
    3. データマッパーで、ソースフィールドを各テンプレートプレースホルダーフィールドにマップします。

      たとえば、この手順の後に記載されているテンプレート例を使用して、ソースフィールドを以下のテンプレートフィールドにマップします。

      • time
      • name
      • text
    4. 右上の Done をクリックし、データマッパーステップをフローに追加します。

    テンプレートステップからの出力は常に JSON オブジェクトになります。そのため、テンプレートステップの後にデータマッパーステップを追加する必要があります。

  8. テンプレートステップの後にデータマッパーステップを追加するには、以下を行います。

    1. フロービジュアライゼーションで、先ほど追加したテンプレートステップの直後にある Plus Sign をクリックします。
    2. Data Mapper をクリックします。
    3. データマッパーで、テンプレートの message フィールドをターゲットフィールドにマップします。message フィールドには常にソースフィールドをテンプレートに挿入した結果が含まれます。たとえば、フローの次のコネクションが Gmail コネクションで、テンプレートステップの結果を Gmail メッセージの内容として送信するとします。これには、message ソースフィールドを text ターゲットフィールドにマップします。
    4. 右上の Done をクリックします。

テンプレートの例

Mustache テンプレートの例:

At {{time}}, {{name}} tweeted:
{{text}}

Freemarker および Velocity では、以下のテンプレート例がサポートされます。

At ${time}, ${name} tweeted:
${text}

Velocity では、以下の例のようにかっこを使用しない構文もサポートされます。

At $time, $name tweeted:
$text

プレースホルダーに . (ピリオド) を使用することはできません。

その他のリソース

フィールドのマッピングに関する詳細は、インテグレーションデータを次のコネクションのフィールドにマッピング を参照してください。