Konfigurieren und Anpassen von Workflows id181AI0OJ0RO
Workflows ermöglichen die Automatisierung von Aktivitäten des Typs Adobe Experience Manager (AEM). Ein Workflow besteht aus einer Reihe von Schritten, die in einer bestimmten Reihenfolge ausgeführt werden. Sie können für jeden Schritt eine eigene Aktivität definieren. Sie können beispielsweise eine E-Mail-Benachrichtigung an alle Reviewer in einer Gruppe senden, wenn eine Themenüberprüfung erstellt wird. Sie können auch eine Benachrichtigung an den Herausgeber senden, wenn eine Aufgabe zur Ausgabegenerierung abgeschlossen ist.
Weitere Informationen zu Workflows in AEM finden Sie unter:
-
Anwenden von und Teilnehmen an Workflows: Arbeiten mit Workflows.
-
Das Erstellen von Workflow-Modellen und die Erweiterung der Workflow-Funktionalität: Entwickeln und Erweitern von Workflows.
-
Verbesserung der Leistung von Workflows, die bedeutende Server-Ressourcen nutzen: Gleichzeitige Verarbeitung von Workflows.
Die Abschnitte in diesem Thema führen Sie durch verschiedene Anpassungen, die Sie in den in AEM Guides bereitgestellten Standard-Workflows vornehmen können.
Anpassen des Workflow für Überprüfungen id176NE0C00HS
Das Inhaltserstellungs-Team jedes Unternehmens arbeitet auf eine bestimmte Weise, um seine Geschäftsanforderungen zu erfüllen. In einigen Organisationen gibt es einen dedizierten Editor, während andere Organisationen ein automatisiertes redaktionelles Überprüfungssystem haben könnten. In einer Organisation kann ein typischer Authoring- und Publishing-Workflow beispielsweise Aufgaben wie enthalten: Wenn ein Autor mit der Inhaltserstellung fertig ist, geht er automatisch an die Validierungsverantwortlichen. Nach Abschluss der Überprüfung wird er an den Publisher weitergeleitet, um die endgültige Ausgabe zu generieren. In AEM können Aktivitäten, die Sie mit Ihren Inhalten und Assets durchführen, in Form eines Prozesses kombiniert und einem AEM-Workflow zugeordnet werden. Weitere Informationen zu Workflows in AEM finden Sie unter Verwalten von Workflows in der Dokumentation zu AEM.
Mit AEM Guides können Sie den standardmäßigen Überprüfungs-Workflow anpassen. Sie können die folgenden vier benutzerdefinierten Überprüfungsprozesse mit Ihren anderen Authoring- oder Publishing-Workflows verwenden.
-
Überprüfung erstellen: Dieser Prozess bereitet die Metadaten vor, die zum Erstellen einer Prüfungsaufgabe erforderlich sind. Beispielsweise werden den Reviewern Überprüfungsberechtigungen zugewiesen, der Status der zu überprüfenden Themen wird auf überprüft, die Zeitpläne für Überprüfungen werden festgelegt und vieles mehr. Von den vier Prozessen ist dies der einzige obligatorische Prozess, der in Ihren benutzerdefinierten Workflow aufgenommen werden muss. In Ihrem Workflow können Sie die anderen drei Prozesse ein- oder ausschließen.
-
Prüfungsaufgabe zuweisen: Dieser Prozess erstellt die Prüfungsaufgabe und sendet die Aufgabenbenachrichtigung an den Initiator und die Validierungsverantwortlichen.
-
Überprüfungs-E-Mail senden: Dieser Prozess sendet die Überprüfungs-E-Mail an den Initiator und die Validierungsverantwortlichen.
-
Auftrag zum Schließen der Überprüfung planen: Dieser Prozess stellt sicher, dass der Überprüfungsprozess beim Erreichen der Frist abgeschlossen wird.
Beim Erstellen eines benutzerdefinierten Überprüfungs-Workflows besteht die erste Aufgabe darin, die erforderlichen Metadaten festzulegen, die für den Prozess „Überprüfung erstellen“ benötigt werden. Dazu können Sie ein ECMA-Skript erstellen. Ein Beispiel für das ECMA-Skript, das die Metadaten zuweist, finden Sie unten sowohl für das Thema als auch für die Zuordnung.
für Thema
var workflowdata=workItem.getWorkflowData();
workflowdata.getMetaDataMap().put("initiator","admin");
workflowdata.getMetaDataMap().put("operation","AEM_REVIEW");
workflowdata.getMetaDataMap().put("orgTopics","/content/dam/xml-solution/review.xml");
workflowdata.getMetaDataMap().put("payloadJson","{\"base\":\"/content/dam/xml-solution\",\"asset\":[\"/content/dam/xml-solution/review.xml\"],\"referrer\":\""}");
workflowdata.getMetaDataMap().put("deadline","2017-06-27T13:19:00.000+05:30");
workflowdata.getMetaDataMap().put("title","Review through custom workflow");
workflowdata.getMetaDataMap().put("description","Initiate this review process using the AEM workflow");
workflowdata.getMetaDataMap().put("assignee","user-one", "user-two");
workflowdata.getMetaDataMap().put("status","1");
workflowdata.getMetaDataMap().put("projectPath","/content/projects/review");
workflowdata.getMetaDataMap().put("startTime", System.currentTimeMillis());
workflowdata.getMetaDataMap().put("reviewType", "AEM");
workflowdata.getMetaDataMap().put("versionJson", "[{\"path\":\"GUID-ca6ae229-889a-4d98-a1c6-60b08a820bb3.dita\",\"review\":true,\"version\":\"1.0\",\"reviewers\":[\"projects-samplereviewproject-owner\"]}]");
workflowdata.getMetaDataMap().put("isDitamap","false");
workflowdata.getMetaDataMap().put("reviewVersion","3.0");
Für Karte
var workflowdata = workItem.getWorkflowData();
workflowdata.getMetaDataMap().put("initiator", "admin");
workflowdata.getMetaDataMap().put("operation", "AEM_REVIEW");
workflowdata.getMetaDataMap().put("orgTopics", "GUID-ae42f13c-7201-4453-9a3a-c87675a5868e.dita|GUID-28a6517b-1b62-4d3a-b7dc-0e823225b6a5.dita|GUID-dd699e10-118d-4f1b-bf19-7f1973092227.dita|");
var payloadJson = "{\"referrer\":\"\",\"rootMap\":\"GUID-17feb385-acf3-4113-b838-77b11fd6988d.ditamap\",\"asset\":[\"GUID-17feb385-acf3-4113-b838-77b11fd6988d.ditamap\"],\"base\":\"/content/dam\"}";
workflowdata.getMetaDataMap().put("payloadJson", payloadJson);
workflowdata.getMetaDataMap().put("deadline", "2047-06-27T13:19:00.000+05:30");
workflowdata.getMetaDataMap().put("title", "Review task via workflow with map");
workflowdata.getMetaDataMap().put("description", "Review task via workflow with map Description");
workflowdata.getMetaDataMap().put("assignee", "user-one");
workflowdata.getMetaDataMap().put("status", "1");
workflowdata.getMetaDataMap().put("projectPath", "/content/projects/review_project_via_workflow");
workflowdata.getMetaDataMap().put("startTime", new Date().getTime());
var versionJson = "[{\"path\":\"GUID-ae42f13c-7201-4453-9a3a-c87675a5868e.dita\",\"version\":\"1.0\",\"review\":true,\"reviewers\":[\"starling-regression-user\"]},{\"path\":\"GUID-28a6517b-1b62-4d3a-b7dc-0e823225b6a5.dita\",\"version\":\"1.0\",\"review\":true,\"reviewers\":[\"starling-regression-user\"]},{\"path\":\"GUID-dd699e10-118d-4f1b-bf19-7f1973092227.dita\",\"version\":\"1.0\",\"review\":true,\"reviewers\":[\"starling-regression-user\"]}]";
workflowdata.getMetaDataMap().put("versionJson", versionJson);
workflowdata.getMetaDataMap().put("notifyViaEmail", "true");
workflowdata.getMetaDataMap().put("allowAllReviewers", "false");
workflowdata.getMetaDataMap().put("isDitamap", "true");
workflowdata.getMetaDataMap().put("ditamap", "GUID-17feb385-acf3-4113-b838-77b11fd6988d.ditamap");
var ditamapHierarchy = "[{\"path\":\"GUID-17feb385-acf3-4113-b838-77b11fd6988d.ditamap\",\"items\":[{\"path\":\"GUID-db5787bb-5467-4dc3-b3e5-cfde562ee745.ditamap\",\"items\":[{\"path\":\"GUID-ae42f13c-7201-4453-9a3a-c87675a5868e.dita\",\"items\":[],\"title\":\"\"},{\"path\":\"GUID-28a6517b-1b62-4d3a-b7dc-0e823225b6a5.dita\",\"items\":[],\"title\":\"\"}],\"title\":\"\"},{\"path\":\"GUID-dd699e10-118d-4f1b-bf19-7f1973092227.dita\",\"items\":[],\"title\":\"\"}]}]";
workflowdata.getMetaDataMap().put("ditamapHierarchy", ditamapHierarchy);
workflowdata.getMetaDataMap().put("reviewVersion","3.0");
Sie können dieses Skript im Knoten /etc/workflows/scripts
erstellen. In der folgenden Tabelle werden die Eigenschaften beschrieben, die von diesem ECMA-Skript zugewiesen werden:
initiator
operation
AEM_REVIEW
festgelegt ist.orgTopics
payloadJson
-
base
: Pfad des übergeordneten Ordners, der das zur Überprüfung gesendete Thema enthält.-
asset
: Pfad des zur Überprüfung gesendeten Themas.-
referrer
: Lassen Sie es leer.deadline
yyyy-MM-dd'T'HH:mm:ss.SSSXXX
an.title
description
assignee
status
startTime
System.currentTimeMillis()
, um die aktuelle Systemzeit abzurufen.projectPath
reviewType
versionJson
isDitamap
ditamapHierarchy
ditamap
allowAllReviewers
notifyViaEmail
Nachdem Sie das Skript erstellt haben, rufen Sie es auf, bevor Sie den Prozess zum Erstellen einer Überprüfung in Ihrem Workflow aufrufen. Anschließend können Sie je nach Ihren Anforderungen die anderen Überprüfungs-Workflow-Prozesse aufrufen.
Entfernen des Überprüfungs-Workflows aus der Bereinigungskonfiguration
Um die Leistung der Workflow-Engine zu verbessern, können Sie regelmäßig abgeschlossene Workflow-Instanzen aus dem AEM-Repository löschen. Wenn Sie die standardmäßigen AEM-Konfigurationen verwenden, werden alle abgeschlossenen Workflow-Instanzen nach einem bestimmten Zeitraum bereinigt. Dies führt auch dazu, dass alle Überprüfungs-Workflows aus dem AEM-Repository gelöscht werden.
Sie können verhindern, dass Überprüfungs-Workflows automatisch bereinigen, indem Sie das Modell des Überprüfungs-Workflows (information) aus der Konfiguration der automatischen Bereinigung entfernen. Sie müssen die Adobe Granite Workflow-Bereinigungskonfiguration verwenden, um die Workflow-Modelle für die Überprüfung aus der Liste für die automatische Bereinigung zu entfernen.
Stellen Sie in der Adobe Granite Workflow-Bereinigungskonfiguration sicher, dass Sie mindestens einen Workflow auflisten, den Sie sicher bereinigen können. Sie können beispielsweise einen der folgenden von AEM Guides erstellten Workflows verwenden:
- /etc/workflow/models/publishditamap/jcr:content/model
- /etc/workflow/models/post-dita-project-creation-tasks/ jcr:content/model
Durch Hinzufügen eines Workflows in der Adobe Granite Workflow-Bereinigungskonfiguration wird sichergestellt, dass AEM nur die Workflows bereinigt, die in der Konfiguration aufgeführt sind. Dadurch wird verhindert, dass AEM die Informationen des Überprüfungs-Workflows bereinigt.
Weitere Informationen zum Konfigurieren der Adobe Granite Workflow-Bereinigungskonfiguration finden Sie unter Verwalten von Workflow-Instanzen in der Dokumentation zu AEM.
E-Mail- und AEM-Benachrichtigung anpassen
In einer Reihe von AEM Guides-Workflows werden E-Mail-Benachrichtigungen verwendet. Wenn Sie beispielsweise eine Prüfungsaufgabe initiieren, wird eine E-Mail-Benachrichtigung an die Validierungsverantwortlichen gesendet. Um jedoch sicherzustellen, dass die E-Mail-Benachrichtigung gesendet wird, müssen Sie diese Funktion in AEM aktivieren. Informationen zum Aktivieren der E-Mail-Benachrichtigung in AEM finden Sie im Artikel Konfigurieren von E-Mail in der Dokumentation zu AEM.
AEM Guides enthält eine Reihe von E-Mail- und AEM-Benachrichtigungen, die Sie anpassen können. Führen Sie die folgenden Schritte aus, um diese Benachrichtigungen anzupassen:
-
Verwenden Sie den Package Manager, um
/libs/fmdita/mail/review
Ordner herunterzuladen.note note NOTE Nehmen Sie keine Anpassungen in den Standardkonfigurationsdateien im Knoten libs
vor. Sie müssen eine Überlagerung des Knotenslibs
im Knotenapps
erstellen und die erforderlichen Dateien nur im Knotenapps
aktualisieren. -
Der Ordner
review
enthält die folgenden Unterordner:aem-notification
CSS
email-notification
Die detaillierte Beschreibung dieser Unterordner wird unten erläutert:
table 0-row-2 1-row-2 2-row-2 3-row-2 Überprüfen von Unterordnern Beschreibung aem-notification
Enthält verschiedene AEM-Benachrichtigungstypen, die angepasst werden können. closed
content-updated
feedback-addressed
feedback-provided
requested
reviewer-removed
tag-mention
In diesen Unterordnern befinden sichprimary.vm
- undsecondary.vm
, mit denen Sie den Titel bzw. die Beschreibung der AEM-Benachrichtigung anpassen können.CSS
Enthält die email-notification.css
zum Anpassen des Stils von E-Mail-Benachrichtigungen.email-notification
Enthält verschiedene E-Mail-Benachrichtigungstypen, die angepasst werden können. closed
content-updated
feedback-addressed
feedback-provided
requested
reviewer-removed
tag-mention
In diesen Unterordnern befinden sichprimary.vm
- undsecondary.vm
, mit denen Sie den Betreff bzw. Text der E-Mail-Benachrichtigung anpassen können.
Die Definition der einzelnen Benachrichtigungstypen ist unten beschrieben:
closed
: Trigger beim Schließen einer Prüfungsaufgabe.content-updated
: Trigger, wenn ein Autor oder Initiator den Inhalt aktualisiert.feedback-addressed
: Trigger, wenn der Autor oder Initiator die Kommentare kommentiert und eine Überprüfung durch den Reviewer anfordert.feedback-provided
Trigger, wenn ein Reviewer die Aufgabe als abgeschlossen markiert, indem er dem Autor oder Initiator der Prüfungsaufgabe Kommentare auf Aufgabenebene bereitstellt.requested
: Trigger, wenn ein Autor oder Initiator eine Prüfungsaufgabe erstellt.reviewer-removed
: Trigger, bei denen die Zuweisung eines Reviewers zu einer Prüfungsaufgabe aufgehoben wird.tag-mention
: Trigger, wenn ein Benutzer in Überprüfungskommentaren erwähnt oder getaggt wird.
Stellen Sie beim Anpassen einer E-Mail oder AEM-Benachrichtigung sicher, dass Sie nur den folgenden vordefinierten Variablensatz verwenden, der in primary.vm
- und secondary.vm
-Dateien verwendet wird.
projectPath
reviewTitle
projectName
commentator
commentExcerpt
taskLink
authorName
dueDate
reviewerName
user
recipient
Anpassen des Workflows nach der Ausgabe id17A6GI004Y4
AEM Guides bietet Ihnen die Flexibilität, einen Workflow nach der Ausgabe anzugeben. Sie können einige Nachbearbeitungsaufgaben für die Ausgabe ausführen, die mit AEM Guides generiert wird. Beispielsweise können Sie einige CQ-Tags auf die generierte Ausgabe der AEM-Site anwenden oder bestimmte Eigenschaften auf die PDF-Ausgabe festlegen oder eine E-Mail an eine Benutzergruppe senden, sobald die Ausgabe generiert wurde.
Sie können ein neues Workflow-Modell erstellen, das als Workflow nach der Generierung von Ausgaben verwendet werden kann. Wenn ein Workflow zur Erzeugung nach der Ausgabe ausgelöst wird, gibt der Workflow zur Erzeugung von Ausgaben kontextuelle Informationen über die Workflow-Metadatenzuordnung frei, mit denen Sie die Verarbeitung der generierten Ausgabe durchführen können. In der folgenden Tabelle werden die als Metadaten freigegebenen Kontextinformationen beschrieben:
outputName
generatedPath
outputType
outputTitle
outputHistoryPath
isSuccess
logPath
generatedTime
initiator
Um die Metadaten der Ausgabegenerierung zu verwenden, können Sie ein ECMA-Skript oder ein OSGi-Bundle erstellen. Ein Beispiel für das ECMA-Skript, das die Metadaten verwendet, finden Sie unten:
/etc/workflows/scripts
erstellen.var session = workflowSession.getSession(); // Obtain session object to read/write the repository.
var payload = workItem.getWorkflowData().getPayload().toString(); // Get the workflow payload (the ditamap file on which the generation was triggered)
var metadata = workItem.getWorkflowData().getMetaDataMap(); // Get the workflow metadata object
var generatedPath = metadata.get("generatedPath"); // supplied by AEM Guides
var username = metadata.get("initiator"); // supplied by AEM Guides
var successful = metadata.get("isSuccess"); // supplied by AEM Guides
var title = metadata.get("outputTitle"); // supplied by AEM Guides
var subject = "Output Generation Finished";
var message = "Generation of output " + title + " just finished " +
(successful ? "successfully. " : "unsuccessfully. ");
message += "It was triggered by " + username;
if (successful) {
message += "<br/><br/>The path to the generated output is " +
generatedPath;
}
/*
MailerAPI.sendMail("dl-docs-authors", subject, message);
*/
Rufen Sie nach Erstellung des Skripts das benutzerdefinierte Skript in Ihrem Workflow auf. Anschließend können Sie je nach Ihren Anforderungen die anderen Workflow-Prozesse aufrufen. Nachdem Sie Ihren benutzerdefinierten Workflow entworfen haben, rufen Sie die Nachgenerierung abschließen als letzten Schritt in Ihrem Workflow-Prozess auf. Der Schritt Nachgenerierung abschließen stellt sicher, dass der Status der Ausgabegenerierungsaufgabe nach Abschluss des Ausgabegenerierungsprozesses auf Abgeschlossen aktualisiert wird. Nachdem Sie einen benutzerdefinierten Workflow für die Generierung nach der Ausgabe erstellt haben, können Sie ihn mit jeder Ihrer Vorgaben für die Ausgabegenerierung konfigurieren. Wählen Sie den gewünschten Workflow in der Eigenschaft Workflow nach der Generierung ausführen der gewünschten Voreinstellung aus. Wenn Sie eine Ausgabegenerierungsaufgabe mit der konfigurierten Ausgabevorgabe ausführen, ändert sich der Aufgabenstatus (auf der Registerkarte „Ausgabe“) in Nachbearbeitung.
Anpassen und Aktualisieren des Asset-Workflows id18C3D0I0B5Z
Standardmäßig werden die Workflow-Trigger DAM Update Asset immer dann angezeigt, wenn Sie ein AEM-Asset erstellen oder aktualisieren (XML oder non-XML). Wenn Sie beispielsweise ein Thema erstellen oder aktualisieren, wird der DAM-Update-Asset-Workflow ausgeführt. Der DAM Update Asset-Workflow versucht, relevante Metadaten aus der Assets zu extrahieren. Der vorkonfigurierte Workflow Asset-Aktualisierung verfügt über keine Schritte zum Extrahieren relevanter Metadaten aus einer DITA-Datei, und der Workflow DAM-Update-Asset generiert zum Zeitpunkt der Ausführung viele Protokolle. Wenn Sie die zusätzlichen Protokolle vermeiden möchten, können Sie den Workflow so konfigurieren, dass alle XML-Dateien aus der Verarbeitung übersprungen werden.
Führen Sie die folgenden Schritte aus, um den Workflow DAM-Update-Asset anzupassen:
-
Öffnen Sie die Workflow-Starter Seite.
Die Standard-URL für den Zugriff auf die Seite „Workflow-Starter“ lautet:
code language-http http://<server name>:<port>/libs/cq/workflow/admin/console/content/launchers.html
-
Öffnen Sie in der Liste der Workflow-Starter die Eigenschaften des Workflows DAM-Update-Asset .
-
Fügen Sie eine Bedingung mit dem folgenden Ausdruck hinzu:
code language-json jcr:content/metadata/dc:format!=application/xml
-
Klicken Sie auf Speichern und schließen.
Konfigurieren des XML-Workflows für die Nachbearbeitung id18CJB03J0Y4
AEM Guides erstellt eine Reihe von Workflows, mit denen Sie DITA-Inhalte in AEM bearbeiten können. Es gibt beispielsweise Workflows, die ausgeführt werden, wenn Sie DITA-Inhalte hochladen oder vorhandene Inhalte aktualisieren. Diese Workflows analysieren DITA-Dokumente und führen verschiedene Aufgaben durch, z. B. das Festlegen der Metadaten, das Hinzufügen von Standardausgabesets zu neuen DITA-Zuordnungen und andere zugehörige Aufgaben.
Die folgenden Eigenschaften steuern, wie AEM Guides die Nachbearbeitungs-Workflows ausführt:
com.adobe.fmdita.postprocess.PostProcessObservation
com.adobe.fmdita.config.ConfigManager
Der Standardwert ist 1.