DocuSign Connector 1.1 の例

次の例では、DocuSign エンベロープを作成する方法を示します。この例には次の 2 つのフローが含まれます。

  • 最初のフローは、ユーザーインターフェースのテンプレートを提供します。

  • 2 つ目のフローは、DocuSign エンベロープを作成します。

始める前に

以下が必要です。

  • Anypoint Studio

  • Mule Runtime Engine (Mule) 4.2.1 以降

最初のフローの作成

最初のフローは、ユーザーインターフェースのテンプレートを提供します。フローで使用するテンプレートを変更するため、​Parse Template​ コンポーネントを選択し、​[Location (場所)]​ 項目の値を使用するテンプレートのパスに変更します。

Studio の DocuSign Connector の最初のフロー

このフローでは、次を設定します。

  • HTTP Listener​ コンポーネント

  • Parse Template​ コンポーネント

HTTP リスナーを設定する

localhost​ のポート ​8081​ で ​/​ アカウントパスへのコールが行われたときに Mule フローを開始するように ​HTTP Listener​ を設定します。

この例では一部の項目値に変数を使用しています。次のいずれかを実行できます。

  • コード内で変数を値に置き換える。

  • プロパティファイルで各変数の値を指定しておき、コネクタ設定からそのファイルを参照する。

プロパティファイルの使用方法についての詳細は、​「プロパティプレースホルダーの設定」​を参照してください。

HTTP リスナー​を設定するには、次の手順に従います。

  1. Studio で新しい Mule プロジェクトを作成します。

  2. [Mule Palette (Mule パレット)]​ ビューで「​http​」を検索し、​[Listener]​ 操作を選択します。

  3. [Listener]​ 操作をキャンバスにドラッグします。

  4. [Listener]​ 設定で、​[Connector configuration (コネクタ設定)]​ 項目の横にある ​[Add (追加)]​ アイコンをクリックしてグローバル要素を追加します。

  5. [OK]​ をクリックして、デフォルトを受け入れます。

  6. [Path (パス)]​ 項目を ​/​ に設定します。

Parse Template コンポーネントを追加する

Parse Template​ コンポーネントを追加して、メインリソースフォルダーにある HTML フォーム (​form.html​) のテンプレートを作成します。例ではこのフォームを使用して、エンベロープを作成するための情報を伝送します。

  1. [Mule Palette (Mule パレット)]​ ビューで「​parse​」を検索し、​[Core] > [Parse Template]​ を ​[HTTP Listener]​ の横にドラッグします。

  2. [Publish]​ プロパティウィンドウで、次の項目を設定します。

    項目

    Display Name (表示名)

    コンポーネントの名前 (​Parse Template​ など)。

    Location (場所)

    ファイルの場所 (​form.html​ など)。

2 つ目のフローの作成

2 つ目のフローは、DocuSign エンベロープを作成します。​status​、​emailSubject​、​documents​、​recipients​ (組み合わせた URI と受信者 URI) パラメーターは必須です。

Studio の DocuSign Connector の 2 つ目のフロー

このフローでは、次を設定します。

  • HTTP Listener​ コンポーネント

  • [Logger]​ コンポーネント

  • Envelopes Post Envelopes​ 操作

  • [Transform Message]​ コンポーネント

  • 2 つ目の ​[Logger]​ コンポーネント

HTTP リスナーを設定する

localhost​ のポート ​8081​ で ​/​ アカウントパスへのコールが行われたときに Mule フローを開始するように ​HTTP Listener​ を設定します。

この例では一部の項目値に変数を使用しています。次のいずれかを実行できます。

  • コード内で変数を値に置き換える。

  • プロパティファイルで各変数の値を指定しておき、コネクタ設定からそのファイルを参照する。

プロパティファイルの使用方法についての詳細は、​「プロパティプレースホルダーの設定」​を参照してください。

HTTP リスナー​を設定するには、次の手順に従います。

  1. Studio で新しい Mule プロジェクトを作成します。

  2. [Mule Palette (Mule パレット)]​ ビューで「​http​」を検索し、​[Listener]​ 操作を選択します。

  3. [Listener]​ 操作をキャンバスにドラッグします。

  4. [Listener]​ 設定で、​[Connector configuration (コネクタ設定)]​ 項目の横にある ​[Add (追加)]​ アイコンをクリックしてグローバル要素を追加します。

  5. [OK]​ をクリックして、デフォルトを受け入れます。

  6. [Path (パス)]​ 項目を ​/create-envelope​ に設定します。

[Logger] コンポーネントを追加する

ペイロードに対してログを実行するように ​[Logger]​ コンポーネントを設定します。

  1. [Mule Palette (Mule パレット)]​ ビューで、「​logger​」を検索します。

  2. [Logger]​ コンポーネントをキャンバスの ​[HTTP Listener]​ の横にドラッグします。

  3. 次の項目を設定します。

    項目

    Display Name (表示名)

    ロガーの名前 (​Payload Passed To The Operation Logger​ など)。

    Message (メッセージ)

    「​#[payload]​」と入力します。

    Level (レベル)

    INFO (デフォルト)。

Envelopes Post Envelopes 操作を追加する

Envelopes Post Envelopes​ 操作は、テンプレートからエンベロープを作成します。

  1. Envelopes Post Envelopes​ 操作をキャンバスの ​[Logger]​ の横にドラッグします。

  2. [Envelopes Post Envelopes]​ の設定で、​[Connector configuration (コネクタ設定)]​ ドロップダウンをクリックし、[​Docusign_Connector_Config​] を選択します。

  3. [Envelopes Post Envelopes]​ プロパティウィンドウで、次の項目を設定します。

    項目

    Account Id (アカウント ID)

    ${account.id}​。

    Body (本文)

    payload​。

[Transform Message] コンポーネントを追加する

[Transform Message]​ コンポーネントは、テンプレートの入力データを変換します。

  1. [Mule Palette (Mule パレット)]​ ビューで、「​transform message​」を検索します。

  2. [Transform Message]​ コンポーネントをキャンバスの ​[Envelopes Post Envelope]​ の横にドラッグします。

  3. Transform Message​ 設定で、​[Output (出力)]​ セクションの括弧を次の XML で上書きします。

    %dw 2.0
    output application/json
    ---
    payload

2 つ目の [Logger] コンポーネントを追加する

[Transform Message]​ コンポーネントの出力に対してログを実行するように、2 つ目の ​[Logger]​ コンポーネントを設定します。

  1. [Mule Palette (Mule パレット)]​ ビューで、「​logger​」を検索します。

  2. [Logger]​ コンポーネントをキャンバスの ​[Transform Message]​ の横にドラッグします。

  3. 次の項目を設定します。

    項目

    Display Name (表示名)

    ロガーの名前 (​Logger​ など)。

    Message (メッセージ)

    「​#[payload]​」と入力します。

    Level (レベル)

    INFO (デフォルト)。

この例の XML

この例のフローをすばやく Mule アプリケーションに読み込むには、次のコードを Studio XML エディターに貼り付けます。

<?xml version="1.0" encoding="UTF-8"?>

<mule xmlns:http="http://www.mulesoft.org/schema/mule/http"
	xmlns:ee="http://www.mulesoft.org/schema/mule/ee/core" xmlns:docusign="http://www.mulesoft.org/schema/mule/docusign"
	xmlns="http://www.mulesoft.org/schema/mule/core"
	xmlns:doc="http://www.mulesoft.org/schema/mule/documentation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="
http://www.mulesoft.org/schema/mule/http http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/docusign http://www.mulesoft.org/schema/mule/docusign/current/mule-docusign.xsd
http://www.mulesoft.org/schema/mule/ee/core http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd">
	<http:listener-config name="HTTP_Listener_config" doc:name="HTTP Listener config" doc:id="13c7085f-6573-41dc-aafd-d138f8a3e810" >
		<http:listener-connection host="0.0.0.0" port="8081" />
	</http:listener-config>
	<docusign:config name="Docusign_Connector_Config" doc:name="Docusign Connector Config" doc:id="753c4be0-d78e-49f0-9018-9fca64fb7a97" >
		<docusign:authorization-connection authorization="${authorization.api.key}" baseUri="https://demo.docusign.net/restapi"/>
	</docusign:config>
	<configuration-properties doc:name="Configuration properties" doc:id="b7c89d0f-30d4-4bfc-883a-de464b792f30" file="application.properties" />
	<flow name="mule-docusign-template-flow" doc:id="1f8e9187-ea3d-4ddc-9451-70882461fa63" >
		<http:listener doc:name="Listener" doc:id="79babbba-a26a-42d6-b853-4806daa23def" config-ref="HTTP_Listener_config" path="/demo"/>
		<parse-template doc:name="Parse Template" doc:id="e7ff6b4d-7cbc-4c20-9983-8fd7ac4e01f2" location="form.html"/>
	</flow>
	<flow name="create-envelope-flow" doc:id="68aaae35-5c5d-4f05-beb8-b06dd3500e19" >
		<http:listener doc:name="Listener" doc:id="f5584ab0-a5fa-4246-a074-75a8bbfa45f6" config-ref="HTTP_Listener_config" path="/create-envelope"/>
		<logger level="INFO" doc:name="Payload Passed To The Operation Logger" doc:id="dcb42d11-f8fa-4fe3-a1dc-10d7ae877c8b" message="#[payload]"/>
		<docusign:create-v21-accounts-envelopes-by-account-id doc:name="Envelopes Post Envelopes" doc:id="a000887e-7276-4d43-a741-ecbed4b65e39" config-ref="Docusign_Connector_Config" accountId="${account.id}"/>
		<ee:transform doc:name="Transform Message" doc:id="6778ad8b-200f-4873-b60c-4b0068b39e1f" >
			<ee:message >
				<ee:set-payload ><![CDATA[%dw 2.0
output application/json
---
payload]]></ee:set-payload>
			</ee:message>
		</ee:transform>
		<logger level="INFO" doc:name="Logger" doc:id="16de0607-ee97-45fb-8b18-139a8698bab4" message="&gt;&gt;&gt; #[payload]"/>
	</flow>
</mule>