Adobe Experience Manager Assets と Adobe InDesign Server の統合

Adobe Experience Manager Assets 使用する:

  • プロキシ:特定の処理タスクのロードを分配するために使用します。プロキシとは、プロキシワーカーと通信して特定のタスクを実行し、他の Experience Manager インスタンスと通信して結果を送信する Experience Manager インスタンスです。
  • プロキシワーカー:特定のタスクを定義し管理するために使用します。これらは幅広いタスクを取り扱うことができます。例えば、InDesign Server を使用してファイルを処理することができます。

Adobe InDesign で作成したファイルを Experience Manager Assets に完全にアップロードするために、プロキシが使用されます。このプロキシはプロキシワーカーを使用して Adobe InDesign Server と通信します。そこでは、メタデータを抽出して Experience Manager Assets 用の様々なレンディションを生成するためのスクリプトが実行されます。プロキシワーカーは、クラウド設定における InDesign Server インスタンスと Experience Manager インスタンスとの双方向通信を実現します。

メモ

Adobe InDesign は、2 つの異なる製品として提供されます。Adobe InDesign は、印刷およびデジタル配布用のページレイアウトのデザインに使用するデスクトップアプリケーションです。Adobe InDesign Server は、InDesign で作成した内容に基づいて、ドキュメントをプログラムによって自動生成できるようにします。これは、ExtendScript エンジンへのインターフェイスを提供するサービスとして動作します。スクリプトは、JavaScript に似た ExtendScriptで記述されます。InDesign のスクリプトについて詳しくは、https://www.adobe.com/devnet/indesign/documentation.html#idscripting を参照してください。

抽出の仕組み

Adobe InDesign Server と Experience Manager Assets を統合すると、InDesign で作成された INDD ファイルのアップロードやレンディションの生成のほか、すべてのメディアを抽出(ビデオなど)したり、アセットとして保存したりできます。

メモ

以前のバージョンの Experience Manager では XMP とサムネールを抽出できましたが、現在はすべてのメディアを抽出できるようになりました。

  1. INDD ファイルを Experience Manager Assets にアップロードします。

  2. フレームワークにより、コマンドスクリプトが SOAP(Simple Object Access Protocol)経由で InDesign Server に送信されます。
    このコマンドスクリプトは、次のことを実行します。

    • INDD ファイルを取得します。

    • 次の InDesign Server コマンドを実行します。

      • 構造、テキストおよびすべてのメディアファイルが抽出されます。
      • PDF と JPG のレンディションが生成されます。
      • HTML と IDML のレンディションが生成されます。
    • 生成されたファイルを Experience Manager Assets に送り返します。

    メモ

    IDML は、 InDesign ファイルのすべてのコンテンツをレンダリングする XML ベースの形式です。ZIP 圧縮を使用した圧縮パッケージとして保存されます。詳しくは、 InDesign の交換形式 INX および IDML を参照してください。

    注意

    InDesign Server をインストールしていない場合や設定していない場合でも、INDD ファイルを Experience Manager にアップロードすることができます。ただし、この場合に生成されるレンディションは、PNG と JPEG に限定されます。HTML、IDML またはページのレンディションを生成することはできません。

  3. 抽出およびレンダリング生成後:

    • 構造が cq:Page(レンディションタイプ)に複製されます。
    • 抽出されたテキストとファイルが Experience Manager Assets に保存されます。
    • すべてのレンダリングが Experience Manager Assets のアセット自体に保存されます。

InDesign Server と Experience Manager の統合

プロキシを設定した後で、Experience Manager Assets で使用するために InDesign Server を統合するには 、次の手順を実行する必要があります。

  1. InDesign Server をインストールします
  2. 必要に応じて、Experience Manager アセットのワークフロー を設定します。
    これは、デフォルト値がインスタンスに適さない場合にのみ必要です。
  3. InDesign Server のプロキシワーカーを設定します。

InDesign Server のインストール

InDesign Server をインストールして Experience Manager と連携して使用を開始するには:

  1. InDesign Server をダウンロードしてインストールします。

  2. 必要に応じて、 InDesign Server インスタンスの設定をカスタマイズできます。

  3. コマンドラインから、サーバーを起動します。

    <*ids-installation-dir*>/InDesignServer.com -port 8080

    SOAP プラグインがポート 8080 でリスンする状態でサーバーが起動されます。すべてのログメッセージと出力がコマンドウィンドウに直接書き込まれます。

    メモ

    ファイルに出力メッセージを保存してリダイレクトを使用する場合は、例えば Windows の場合は次のように実行します。
    <ids-installation-dir>/InDesignServer.com -port 8080 > ~/temp/INDD-logfile.txt 2>&1

Experience Manager Assets ワークフローの設定

Experience Manager Assets には事前設定済みの DAM アセットの更新​というワークフローがあります。このプロセスには、InDesign 向けの次のプロセス手順が含まれています。

このワークフローには、様々な作成者インスタンス上の設定に合わせて変更できるデフォルト値が設定されています(これは標準ワークフローであり、詳しい情報はワークフローの編集に記載されています)。デフォルト値(SOAP ポートを含む)を使用する場合は、設定は不要です。

設定後、通常のいずれかの方法で InDesign ファイルを Experience Manager Assets にアップロードすると、そのアセットを処理して各種レンダリングを準備するワークフローがトリガーされます。INDD ファイルを Experience Manager Assets にアップロードし、IDS で作成された各種レンディションが <*your_asset*>.indd/Renditions の下にあることを確認して、設定をテストします。

メディア抽出

このステップでは、INDD ファイルからのメディアの抽出を制御します。

カスタマイズするには、メディア抽出​ステップの「引数」タブを編集します。

メディア抽出の引数とスクリプトパス

メディア抽出の引数とスクリプトパス

  • ExtendScript ライブラリ:他のスクリプトに必要とされる単純な http get/post メソッドライブラリです。

  • スクリプトを拡張:ここで複数のスクリプトの組み合わせを指定できます。InDesign Server で独自のスクリプトを実行する場合は、 /apps/settings/dam/indesign/scripts にスクリプトを保存します。

注意

ExtendScript ライブラリは変更しないでください。このライブラリは Sling との通信に必要になる HTTP 機能を提供するものです。この設定では、InDesign Server で使用するために送信するライブラリを指定します。

メディア抽出ワークフロー手順で実行される ThumbnailExport.jsx スクリプトにより、サムネールのレンディションを JPG 形式で生成します。このレンディションはサムネール処理ワークフロー手順で使用され、Experience Manager で要求される静的レンディションを生成します。

サムネールを処理ワークフローステップは、異なるサイズの静的レンディションを生成するように設定できます。デフォルトの設定は、Experience Manager Assets で必要となるため、削除しないでください。最後に、画像プレビューレンディションを削除ワークフロー手順で不要になった .JPG 形式のサムネールレンディションが削除されます。

ページ抽出

抽出された要素から Experience Manager ページを作成します。抽出ハンドラーが、レンディション(現時点では HTML または IDML)からデータを抽出するために使用されます。このデータを元に、PageBuilder を使用してページが作成されます。

カスタマイズするには、ページ抽出​ステップの「引数」タブを編集します。

chlimage_1-96

  • ページ抽出ハンドラー:ポップアップリストから、使用するハンドラーを選択します。抽出ハンドラーは、関連する RenditionPickerExtractionHandler API を参照)によって選択された特定のレンディションに対して動作します。標準の Experience Manager インストールでは、次の抽出ハンドラーを使用できます。

    • IDML 書き出し抽出ハンドラー:MediaExtract ステップで生成された IDML レンディションに対して動作します。
  • ページ名:生成されるページに割り当てる名前を指定します。空白にした場合、名前は「page」(「page」が既に存在する場合は、その派生形)になります。

  • ページタイトル:生成されるページに割り当てるタイトルを指定します。

  • ページルートのパス:生成されるページのルート位置を示すパス。空白にした場合、アセットのレンディションを保持しているノードが使用されます。

  • ページテンプレート:ページの生成時に使用するテンプレート。

  • ページデザイン:ページの生成時に使用するページデザイン。

InDesign Server のプロキシワーカーを設定

メモ

ワーカーは、プロキシインスタンス上にあります。

  1. 「ツール」コンソールの左側のウィンドウで、「クラウドサービス設定」を展開します。次に、「クラウドプロキシ設定」を展開します。

  2. IDS ワーカー」をダブルクリックし、開いて設定します。

  3. 編集」をクリックして設定ダイアログを開き、必要な設定を定義します。

    proxy_idsworkerconfig

    • IDS プール
      InDesign Server との通信に使用する SOAP エンドポイント。必要になる項目の追加、削除および並べ替えを行うことができます。
  4. 「OK」をクリックして保存します。

InDesign Server と Experience Manager が異なるホスト上にある場合、またはこれらのアプリケーションの一方または両方がデフォルトのポートで動作していない場合は、Day CQ Link Externalizer で InDesign Server のホスト名、ポート、コンテンツパスを設定します。

  1. https://[aem_server]:[port]/system/console/configMgr で web コンソールにアクセスします。

  2. Day CQ Link Externalizer の設定を探します。「編集」をクリックして開きます。

  3. Link Externalizer の設定は、Experience Manager デプロイメントと InDesign Server の 絶対 URL を作成するのに役立ちます。「ドメイン」フィールドを使用して、Adobe InDesign Server のホスト名を指定します。「保存」をクリックします。

    絶対 URL では、次の図のように、localhost をローカル(オーサー)インスタンスのホスト名、およびパブリッシュインスタンスのホスト名または IP アドレスとして使用します。

    Link Externalizer の設定

InDesign Server の並列ジョブ処理を有効にする

IDS の並列ジョブ処理を有効にすることができます。InDesign Server が処理できる並列ジョブの最大数(x)を決定します。

  • 単一のマルチプロセッサーマシンでは、InDesign Server が処理できる並列ジョブの最大数(x)は、IDS を実行するプロセッサー数から 1 を減算した数です。
  • 複数のマシンで IDS を実行する場合は、すべてのマシンで使用可能なプロセッサーの総数を把握して、そこからマシン総数を減算する必要があります。

IDS 並列ジョブ数を設定するには:

  1. Felix Console の「Configurations」タブを開きます。次に URL の例を挙げます。https://[aem_server]:[port]/system/console/configMgr

  2. Apache Sling Job Queue Configuration で IDS 処理キューを選択します。

  3. 次のように設定します。

    • Type - Parallel
    • Maximum Parallel Jobs - <*x*>(上で計算した値)
  4. これらの変更を保存します。

  5. Adobe CS6 以降のマルチセッションサポートを有効にするには、com.day.cq.dam.ids.impl.IDSJobProcessor.name 設定の「enable.multisession.name」チェックボックスをオンにします。

  6. IDS ワーカー設定に SOAP エンドポイントを追加して、x 個の IDS ワーカーから成るプールを作成します。

    複数のマシンで InDesign Server を実行している場合は、マシンあたりのプロセッサー数から 1 を減算した数の SOAP エンドポイントを各マシンに追加します。

メモ

ワーカーのプールを使用する場合、IDS ワーカーのブロックリストを有効にできます。

その場合は、com.day.cq.dam.ids.impl.IDSJobProcessor.name 設定の下にある「enable.retry.name」チェックボックスをオンにします。これにより、IDS ジョブの再試行が可能になります。

また、com.day.cq.dam.ids.impl.IDSPoolImpl.name 設定で、max.errors.to.blacklist パラメーターに正の値を設定します。このパラメーターでは、IDS をジョブハンドラーリストから除外するまでのジョブ再試行回数を指定します。

デフォルトでは、設定可能な(retry.interval.to.whitelist.name)時間(分単位)が経過した後で、IDS ワーカーが再検証されます。ワーカーがオンラインである場合は、ブロックリストから削除されます。

InDesign Server 10.0 以降のサポートを有効にする

InDesign Server 10.0 以降では、次の手順を実行してマルチセッションサポートを有効にします。

  1. Experience Manager Assets インスタンス https://[aem_server]:[port]/system/console/configMgr から Configuration Manager を開きます。
  2. 設定 com.day.cq.dam.ids.impl.IDSJobProcessor.name を編集します。
  3. ids.cc.enable オプションを選択し、「保存」をクリックします。
メモ

Experience Manager Assets に InDesign Server を統合する場合、統合に必要なセッションサポート機能はシングルコアのシステムではサポートされていないので、マルチコアのプロセッサーを使用してください。

Experience Manager 資格情報を設定

Experience Manager デプロイメントから InDesign Server にアクセスするためのデフォルトの管理者資格情報(ユーザー名とパスワード)を、InDesign Server との統合を中断することなく、変更できます。

  1. /etc/cloudservices/proxy.html にアクセスします。
  2. ダイアログで、新しいユーザー名とパスワードを指定します。
  3. この資格情報を保存します。

このページ