Anforderungen

Grundlagen

  • Grundlagen von AEM Mobile
  • Kenntnisse im Erstellen und Veröffentlichen von Inhalten über das On-Demand-Standardportal

Erforderliche Produkte

  • AEM Mobile

Einführung

Mit den On-Demand Services APIs in Adobe Experience Manager können Entwickler von Drittanbieteranwendungen diese mit On-Demand-Diensten integrieren. Mit diesen Diensten haben Sie folgende Möglichkeiten:

  • Verwalten von Artikeln
  • Verwalten von Sammlungen
  • Verwalten von Produkten
  • Verwalten von Push-Benachrichtigungen

Die On-Demand Services APIs (früher als „Content Producer Service APIs“ bezeichnet) entsprechen den APIs, die vom On-Demand-Portal (https://aemmobile.adobe.com) verwendet werden.

Content Producer Service APIs von Adobe Digital Publishing Solution

Integration mit AEM-Authoring

Sie können mit AEM Inhalte für AEM Mobile-Apps erstellen. Weitere Informationen erhalten Sie von Ihrem Adobe-Kundenbetreuer.

Drittanbieter-Integrationsmodule

Für die folgenden Redaktionssysteme, Content Management-Systeme (CMS) und webbasierten Authoring-Lösungen sind Integrationsmodule von Adobe-Partnern erhältlich.

CMS-Systeme

Webbasiertes Authoring
Workflow-Systeme

Übersicht über Videos zur Integration

Auf der MAX 2015-Konferenz hielten Klaasjan Tukker und Mike Yang diese Präsentation zu den Möglichkeiten eines erweiterten Arbeitsablaufs ab:

Möglichkeiten erweiterter Arbeitsabläufe mit Adobe APIs (1:25:57)

Downloads

Laden Sie die unten aufgeführten Dateien herunter, um die On-Demand Services API zu verwenden.

Hinweis:

Durch Herunterladen der unten aufgeführten Software bestätigen Sie, dass Sie die Nutzungsbedingungen der Lizenz für AEM Mobile Services APIs, die Adobe.com-Nutzungsbedingungen und die Online-Datenschutzrichtlinien von Adobe gelesen haben und diesen zustimmen.

Herunterladen

Inhalt der ZIP-Datei:

  • API-Dokumentation
  • JSON-Schemadefinitionen
  • Codebeispiele
  • InDesign-Beispielskripts
  • Formular für die Anforderung des API-Schlüssels

 

API-Dokumentation verwenden

Zum Anzeigen der API-Dokumentation (die mit Swagger erstellt wurde), entpacken Sie die Dateien in einen Ordner auf Ihrem Webserver (z. B. MAMP).

Lautet die gehostete URL zur Swagger-Dokumentation „http://localhost:8888/aemmobile-swagger“, können Sie die folgenden Schritte überspringen.

Öffnen Sie die Datei „service.json“ und fügen Sie in Zeile 55 als basePath-Wert den Host und Pfad für den Zugriff auf Ihre Dokumentation ein. Zum Beispiel:

#53     "contact": "wwds@adobe.com"
#54   },
#55   "basePath": "http://localhost:8888/benutzerdefinierter-pfad"
#56 }

Öffnen Sie Ihren Webbrowser und navigieren Sie zum Speicherort der Dokumentation. Die On-Demand Services API sollte angezeigt werden.

 

Projekt, Rollen und Benutzer einrichten

Richten Sie ein Projekt ein, erstellen Sie Rollen und weisen Sie Benutzern Zugriffsrechte zu. Weitere Informationen finden Sie in den folgenden Hilfeartikeln:

Verwenden Sie nach Möglichkeit eine andere Adobe ID als die, der die Verwaltungsberechtigungen „Hauptkonto“ oder „Gesamtes Projekt“ gewährt wurden. Erstellen Sie eine Adobe ID, die nur für die Vorgänge Zugriffsberechtigungen besitzt, die Sie über die On-Demand Services API zulassen möchten

Hinweis:

Sie müssen ein neues Projekt erstellen, um die Beispiele unten auszuführen.

API-Schlüssel

Für den Zugriff auf die On-Demand Services API und die Integration mit Drittanbietersysteme benötigen Sie einen API-Schlüssel.

API-Schlüssel anfordern

Für den Zugriff auf die On-Demand Services API müssen Sie einen API-Schlüssel anfordern. Füllen Sie das PDF-Formular aus, um den API-Schlüssel anzufordern. Senden Sie das ausgefüllte Formular an den Adobe Developer Support: wwds@adobe.com

Herunterladen

Weitere Informationen zu Szenarien, in denen Sie einen API-Schlüssel benötigen oder einen vorhandenen Schlüssel verwenden sollten, finden Sie unter Verwendungsbeispiele für AEM Mobile API-Schlüssel.

„device_id“ und „device_token“ generieren

Nachdem Sie den API-Schlüssel erhalten haben, können Sie „device_id“ und „device_token“ generieren. Rufen Sie die Seite https://aex.aemmobile.adobe.com auf und führen Sie die folgenden Schritte aus:

  • Geben Sie den API-Schlüssel an.
  • Melden Sie sich mit der Adobe ID an, die Sie über das Anforderungsformular auf der Whitelist haben eintragen lassen.

Wenn alle Voraussetzungen erfüllt sind, werden „device_id“ und „device_token“ generiert.

Beispieldateien verwenden

Entpacken Sie die Beispiele und ändern Sie die Standardwerte, sodass sie Ihrem Konto und Ihren API-Schlüsseln entsprechen. Sie müssen im On-Demand-Portal ein neues Projekt erstellen und der Adobe ID eine Rolle zuweisen, die für die Kommunikation in den API-Beispielen verwendet wird.

Ändern:

  • config/credentials.php

Ändern Sie die Werte für „client_id“ (Ihr API-Schlüssel), „client_secret“, „device_token“ und „device_id“ (aus dem AEX-Dienst) bzw. fügen Sie sie hinzu.

Legen Sie den Wert für „client_version“ fest, der der Identifikation Ihres „system“ in der Kommunikation mit der On-Demand Services API dient. Beispiel: „aemmobile-learn-api-doc-1.0“

Ausführen:

  • demo/01_get_access_token.php

Wenn das Projekt korrekt eingerichtet ist, erhalten Sie als Antwort ein „access_token“. Verwenden Sie dieses „access_token“ in den nachfolgenden Dienstaufrufen.

Ändern:

  • config/credentials.php

Fügen Sie den Wert für das „access_token“ hinzu.

Ausführen:

  • demo/02_get_user_permissions.php

Wenn das Projekt korrekt eingerichtet ist, erhalten Sie als Antwort eine Liste von Projekten, auf die die Adobe ID (für die „device_id“/„device_token“ generiert wurden) Zugriff hat.

Wählen Sie das Projekt aus, das Sie verwenden möchten. (Dies sollte ein neues, kürzlich erstelltes Projekt sein.) Die Projekt-ID ist eine GUID wie „8dbeb5da-ca73-d0da-b0b0-885fb83e7ae8“.

Ändern:

  • Config/parameters.php

Aktualisieren Sie „publication_id“ mit Ihrer Projekt-ID, die Sie oben abgerufen haben.

Ausführen:

  • demo/03_update_home_collection.php

Bei korrekter Einrichtung kann die Sammlung der obersten Ebene veröffentlicht werden: Laden Sie Miniatur- und Hintergrundbild hoch, legen Sie die Produkt-ID fest und weisen Sie das Standardlayout zu.

Ändern:

  • config/parameters.php

Wenn das Zielprojekt eine Sammlung mit zwei obersten Ebenen ist, aktualisieren Sie den Wert von „collection_home_name“ von „topLevelContent“ zu „topLevelTabletContent“ für Tablets (oder „topLevelPhoneContent“ für Smartphones).

Sie können jetzt die verbleibenden Beispiele ausführen. Während Sie die Beispiele ausführen, lassen Sie den Bereich „Inhalt und Layouts“ für Ihre Projekte im On-Demand-Portal in einem Browser geöffnet, um die Änderungen live im Browser zu verfolgen.

 

Artikel erstellen

Sie können die Inhalte für Artikel mit HTML oder in InDesign erstellen.

HTML-Artikel

Bei mit HTML erstellten Artikeln können Sie die Inhalte mit CSS/JS formatieren und Responsive-Verhalten verwenden. Alle HTML-Inhalte müssen sich im gleichen Ordner befinden (Unterordner sind zulässig). Die HTML-Dateien werden mit einer manifest.xml-Datei in einer ZIP-Datei komprimiert. Die Manifestdatei enthält eine Liste der Artikel, die zum Artikelpaket gehören, sowie die MD5-Prüfsumme. (Siehe Erstellen von HTML-Artikeln für AEM Mobile.)

Zum Generieren der Artikeldateien aus einem Ordner können Sie das Desktopdienstprogramm oder den Beispiel-Packager „class/manifest.php“ verwenden.

InDesign-Artikel

Sie können Artikel mit festem Layout in Adobe InDesign CS6 oder höher erstellen. InDesign-Inhalte können Sie mit dem Digital Publishing-Zusatzmodul in eine Artikeldatei exportieren. (Siehe Erstellen von AEM Mobile-Artikeln in InDesign.)

Mit der Funktion „exportDpsArticle“ können Sie den Exportvorgang in Skripts ausführen. Weitere Informationen finden Sie unter Erstellen von InDesign-basierten Artikeln mit Skripts.

Fragen und Support

Fragen zu diesem Artikel und zur Verwendung der On-Demand Services APIs können Sie im Forum „API/Integration“ stellen. Wenn Sie persönliche Unterstützung benötigen, wenden Sie sich an den Adobe Developer Support (wwds@adobe.com).

Änderungsprotokoll

20. Juni 2017

Dokumentation aktualisiert:

  • Tippfehler in der Beschreibung korrigiert.

7. Februar 2017

Dokumentation aktualisiert:

  • Unterstützung für dynamische gemeinsame Inhalte in allen Producer Services hinzugefügt

JSON-Schema aktualisiert:

  • Neues JSON-Schema für dynamische gemeinsame Inhalte hinzugefügt

API-Beispiele:

  • Unterstützung für dynamische gemeinsame Inhalte hinzugefügt

1. November 2016

Dokumentation aktualisiert:

  • Batch-Rückgabe des Entitätsstatus hinzugefügt
  • Unterstützung für dynamische Banner in Producer und Ingestion Services hinzugefügt
  • Unterstützung für Android-Push-Benachrichtigungen über die Notification Service API hinzugefügt
  • Möglichkeit hinzugefügt, die Liste mit Inhaltselementen der Sammlung ab einem festgelegten Index zu aktualisieren

JSON-Schema aktualisiert:

  • Neues JSON-Schema für dynamische Banner hinzugefügt

API-Beispiele aktualisiert:

  • Aktualisieren von Collection::updateContentElements(), um deren Vorhandensein festzustellen, bevor die Entität an die Liste mit Inhaltselementen der Sammlung angefügt wird
  • Unterstützung für dynamische Banner hinzugefügt
  • Dynamische Banner zu Demoskripts hinzugefügt (Nr. 13 bis 15)

12. Juli 2016

Dokumentation aktualisiert:

  • Produkt und Produktpaket aktualisiert

30. Juni 2016

Dokumentation aktualisiert:

  • Informationen zum PDF-Upload für den Erfassungsdienst hinzugefügt

JSON-Schema aktualisiert: 12. Juli 2016

Dokumentation aktualisiert:

  • Zusätzliche Metadatenfelder hinzugefügt:
    • contentSize
    • availabilityDate (nur Produkt und Produktpaket)
    • availabilityDateTimezone (nur Produkt und Produktpaket)

API-Beispiele aktualisiert:

  • Demo 05e: PDF-Datei für ersten Artikel aktualisieren
  • Demo 05f: PDF-Datei für ersten Artikel aktualisieren und horizontale Blättergeste einstellen
  • Demo 05g: Erfassungsstatus für ersten Artikel überprüfen
  • Auf Autoloader umgestellt, um die erforderlichen Klassen per PHP-Skript zu laden

10. Mai 2016

Dokumentation aktualisiert:

  • Erfassungsdienst akzeptiert jetzt den Header „application/pdf“
  • Erfassen des Status bekannter Aufträge zum Veröffentlichen/Rückgängigmachen der Veröffentlichung und von Preflight-Aufträgen
    • „POST /job“ gibt die Workflow-ID für diesen Job zurück
    • „GET /status/{publicationID}/publication/00000000-0000-0000-0000-000000000000“ gibt die aktuelle Workflow-ID zurück (sofern verfügbar)
    • Vergleich der aktuellen Workflow-ID (sofern vorhanden) mit der letzten bekannten Workflow-ID
      • Wenn die aktuelle Workflow-ID === die letzte bekannte Workflow-ID ist, läuft der letzte Auftrag noch
      • Wenn die aktuelle Workflow-ID !== die letzte bekannte Workflow-ID ist, wurde der letzte Auftrag abgeschlossen und ein anderer wird ausgeführt
      • Wenn die aktuelle Workflow-ID leer ist, wurde der letzte Auftrag ausgeführt und es wird kein anderer Auftrag ausgeführt

API-Beispiele aktualisiert:

  • Demo 05d: Dateigröße der hochgeladenen Inhalte überprüfen
  • Demo 08c: Erfassen des letzten bekannten Workflow-Status

Dieses Werk unterliegt den Bedingungen der Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License.  Twitter™- und Facebook-Beiträge fallen nicht unter die Bedingungen der Creative Commons-Lizenz.

Rechtliche Hinweise   |   Online-Datenschutzrichtlinie