Zum Hauptinhalt springen
Wenn Sie ABBYY Vantage in Ihrem eigenen System verwenden, möchten Sie wahrscheinlich auch die Funktionen zur manuellen Überprüfung nutzen. Dieser Abschnitt führt Sie durch die Integration der manuellen Überprüfung. Nachdem Sie einige Dokumente über die Vantage-API zur Verarbeitung gesendet haben, überwachen Sie den Status des Vorgangs wie in Dokumente mit der Vantage-API verarbeiten beschrieben. Wenn ein Dokument von einer menschlichen Person überprüft werden muss, enthält die Statusantwort des Vorgangs einen Schlüssel namens manualReviewLink mit einem sicheren Link, über den die prüfende Person ausschließlich auf die Daten dieses speziellen Vorgangs zugreifen kann. Betten Sie ein iframe mit dem Inhalt dieses Links in die Webseite Ihres Dienstes ein:
<iframe src="manual-review-link"></iframe>
Beachten Sie, dass der Link 168 Stunden nach seiner Erstellung abläuft. Wenn Sie die Prüfung fortsetzen müssen, fordern Sie wie zuvor einen neuen Link an, indem Sie eine GET-Anfrage an die Ressource transactions senden.

Iframe-Darstellung

Sie können die Darstellung des Dienstes vereinheitlichen, indem Sie das Vantage-Logo entfernen oder bestimmte Bereiche in der Oberfläche des Clients für Manuelle Überprüfung ausblenden. Um das Vantage-Logo zu entfernen, fügen Sie dem Link einen displayMode-Query-Parameter mit dem Wert iframe wie folgt hinzu:
<iframe src="manual-review-link&displayMode=iframe"></iframe>
Verwenden Sie die folgenden Optionen, um die Benutzeroberfläche der Manuellen Überprüfung einzurichten:
KeyDescription
features
batchEditorAuf false setzen, um den Bereich mit den Seitenminiaturen auszublenden.
batchEditor.toolbarAuf false setzen, um den Bereich mit den Seitenminiaturen anzuzeigen, aber die Symbolleiste auszublenden.
batchEditor.autoCollapseAuf true setzen, um den Bereich mit den Seitenminiaturen anzuzeigen, ihn jedoch beim Öffnen der Benutzeroberfläche der Manuellen Überprüfung automatisch zu minimieren.
docEditorAuf false setzen, um den Seitenbildbereich auszublenden.
docEditor.toolbarAuf false setzen, um den Seitenbildbereich anzuzeigen, aber dessen Symbolleiste auszublenden.
formEditorAuf false setzen, um den Bereich mit der Liste der extrahierten Felder auszublenden.
rulesReportAuf false setzen, um den Bereich mit der Liste der Regelfehler auszublenden.
sendToStageAvailableAuf true setzen, um die Schaltfläche Send to Stage… anzuzeigen.
Diese Optionen sind in einem einzelnen JSON-Objekt zusammengefasst. Der folgende Beispielcode zeigt ein iframe an, bei dem der Bereich mit den Regelfehlern ausgeblendet und der Bereich mit den Seitenminiaturen minimiert ist:
"features": {
   "batchEditor": {
      "autocollapse": true,
   },
   "rulesReport": false,
}
Fügen Sie Ihrem Link für die Manuelle Überprüfung einen Abfrageparameter settings mit dem Inhalt dieses JSON-Objekts hinzu:
<iframe src="manual-review-link&settings=%7B%22features%22%3A%7B%22batchEditor%22%3A%7B%22autoCollapse%22%3Atrue%7D%2C%22rulesReport%22%3Afalse%7D%7D"></iframe>

Iframe-Ereignisse

Das Iframe-Objekt sendet Nachrichten an das übergeordnete Fenster, um Sie über die Aktionen des Reviewers in der Manuelle Überprüfung-Clientoberfläche zu informieren, damit Sie zum passenden Zeitpunkt mit dem nächsten Schritt fortfahren können. Ereignisse werden mit dem Parameter targetOrigin=parent gesendet. Im Folgenden finden Sie eine Liste von Ereignissen, auf die Sie achten sollten:
  • ManualReviewWasPaused. Wird gesendet, wenn der Reviewer auf die Schaltfläche Reject klickt.
  • ManualReviewWasCompleted. Wird gesendet, wenn der Reviewer auf die Schaltfläche Complete klickt.
  • ManualReviewWithdrawn. Wird gesendet, wenn der Reviewer für einige Zeit inaktiv war und die Manuelle Überprüfung-Clientaufgabe wieder in die allgemeine Aufgabenwarteschlange zurückgegeben wurde.
Der folgende Beispielcode zeigt, wie ein Iframe für die Manuelle Überprüfung angezeigt und ausgeblendet wird, sobald eines der oben genannten Ereignisse ausgelöst wurde. Beispielcode zum Abhören von Iframe-Ereignissen:
<html style="min-height: 100%; height: 100%;">
<head>
  <script>
    var manualReviewLink; // der Link aus der Antwort zum Vorgangsstatus
    window.addEventListener("DOMContentLoaded", init, false);
    function init() {
      var iframe = document.createElement("iframe");
      iframe.src = getUrl();
      iframe.style.width = "100%";
      iframe.style.height = "95%";
      try {
        document.getElementById("main").removeChild(document.querySelector("iframe"));
      } catch (e) { }
      document.getElementById("main").appendChild(iframe);
      window.addEventListener("message", receiveMessage, false);
    }
    function getUrl() {
      return manualReviewLink + "&displayMode=iframe";
    }
    function receiveMessage(event) {
      console.log(event.data);
      if (event.data.target === "parent") {
        if (event.data.eventName === "ManualReviewWithdrawn" || 
            event.data.eventName === "ManualReviewWasPaused" || 
            event.data.eventName === "ManualReviewWasCompleted" ) {
          document.getElementById("iframe").style.display = "none";
        }
      }
    }
  </script>
</head>
<body
  style="background-color: #999999; min-height: 100%; height: 100%; position: relative; margin: 0; padding: 0; background: linear-gradient(to bottom right, #4380bc, #5ba484);">
  <div id="main"
    style="height: 100%; position: relative; padding:20px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;">
  </div>
</body>
</html>