==== Vorbereitung der Installation ==== Bevor (s2f) für eigene Zwecke installiert und konfiguriert werden kann, sollte zum Kennenlernen erst einmal die Testversion von (s2f) auf einem Testrechner zum laufen gebracht werden. Voraussetzung ist eine lizenzierte (p2f)-Version (mindestens Installer Build 280) mit mindestens einem Client, einem Router, einem normalen Gateway und einem Verzeichnis-Monitor. Entsprechende zeitlich limitierte **Testlizenzen** können für die Evaluierung von (s2f) zur Verfügung gestellt werden. Um die Einstiegshürde zu senken, haben wir einen eigenen Installer für (s2f) geschrieben, der die meisten der Kopier- und Konfigurationsaufgaben automatisch erledigt. Dieser Installer kann über eine gesicherte Verbindung von unserer [[https://download.spe-systemhaus.de/s2fSetup-1.1.0.14.exe|Firmen-Website]] geladen werden. Voraussetzung für den Einsatz des Installers ist allerdings: * dass aktuell (p2f) mindestens in der Version des Installers Build 280 auf dem Rechner installiert ist * dass es sich um die Professional-Edition von (p2f) handelt und neben Server und dem Client-/Gateway-Service auch noch der Router installiert wurde * dass sich die gesamte (p2f)-Installation auf diesem einen Rechner befindet * dass diese (p2f)-Installation richtig konfiguriert und getestet ist. Sind später die einzelnen Komponenten von (p2f) auf verschiedenen Rechnern installiert, kann (s2f) natürlich auch eingesetzt werden, aber dann muss manuell installiert werden. Das im Detail zu beschreiben, ist im Rahmen der Testinstallation zu aufwändig. \\ \\ === Installer === Ist der Installer für (s2f) geladen, wird er einfach durch Doppelklick aufgerufen. Er benötigt in jedem Fall Administrationsrechte, weil die (p2f)-Dienste angehalten, umkonfiguriert und neu gestartet werden müssen. {{print2forms:sign2forms:install1.png}} Ein Klick auf die Schaltfläche //Weiter// führt zur einzigen Seite mit vom Anwender zu treffenden Entscheidungen. {{print2forms:sign2forms:install2.png}} Zum einen gibt es die Option, für den Test von (s2f) den **Client-/Gateway-Service** automatisch umzukonfigurieren. Das bedeutet, dass die zwei benötigten Gateways sowie der Testdrucker eingerichtet werden. Da der Testdrucker die gleiche interne Identifikation benutzt, wie die des (p2f)-Installationsprogramms, werden die Einstellungen des meist als //Systemdrucker// benannten Drucker-Clients modifiziert. Die Verbindung dieses Clients zum physischen Drucker wird dabei in jedem Fall intakt gelassen. Ist das nicht gewünscht, weil die Konfigurationen manuell angelegt werden sollen, ist der Haken in der Checkbox zu entfernen. Was bei der manuellen Konfiguration zu beachten ist, findet sich weiter unten auf der Seite. Die zweite abgefragte Installationsoption betrifft den Einsatz des **%%PCL nach PDF%% Konverters**. Zum einen kann aus Gründen der Einheitlichkeit und Wartbarkeit ein bereits installierter Konverter - wie etwa der der Firma Lincoln & Co ([[https://www.biscom.com/file-conversion/|Biscom]], LincPDF) - zum Einsatz kommen. Ist bisher kein Konverter in Benutzung, kann [[https://www.ghostscript.com/GhostPCL.html|GhostPCL]] vom (s2f)-Installer mit installiert werden. Aus juristischen Gründen kann //GhostPCL// nicht mit (s2f) gebündelt werden. Es wird deshalb während des Installationsprozesses aus dem Internet nachgeladen. Deshalb muss in diesem Fall eine offene Internet-Verbindung während des Installationsvorgangs zur Verfügung stehen. Die dritte abgefragte Installationsoption betrifft die **%%PHP%%-Installation**. Ist auf dem Testrechner kein %%PHP%% verfügbar, kann vom (s2f)-Installer eine komplette %%PHP%%-Laufzeitumgebung inklusive vorinstalliertem Debugger von unserer WebSite nachgeladen und installiert werden. Während der Installation wird ein neues p2fRoot-Verzeichnis angelegt, welches auch gleich dem Server zugewiesen wird. Abschliessend werden Server, Client-/Gateway-Service und Router wieder gestartet, und das System ist bereit zum Testen. \\ \\ === Nacharbeiten === Wurde der mit dem (p2f)-Installationsprogramm im Client-/Gateway-Service eingerichtete Drucker entfernt, hat der 'neue' //Systemdrucker// nach dem Ende des (s2f)-Installers noch keine Verbindung zu einem realen Drucker. Der Client muss daher angehalten und die Druckerverbindung muss nachkonfiguriert werden. Erst danach können die Tests mit (s2f) starten. Wurde das Installationsprogramm von (p2f) unmittelbar vor der Installation von (s2f) ausgeführt, ohne dass eine wirkliche Inbetriebname erfolgte, müssen natürlich noch die ganzen Einstellungen für die zu nutzenden Netzwerkschnittstellen vorgenommen werden. Auch die Management Konsole ist noch zu konfigurieren und (p2f) bekanntzugeben. \\ \\ === Manuelle Konfiguration === Soll die Konfiguration des Client-/Gateway-Services manuell durchgeführt werden, weil die existenten Einstellungen nicht gestört werden sollen, sind ein Testdrucker und zwei Gateways anzulegen. Der Testdrucker muss mit dem einzigen in der p2fRoot vorhandenen Drucker mit Namen //Systemdrucker// verbunden werden. {{print2forms:sign2forms:gatewayconfig.png}} Das Gateway //Phase 1// ist ein normales Gateway und muss gemäss des nebenstehenden Bildes eingerichtet werden. Seine Aufgabe besteht darin, eine Kopie des zu unterschreibenden Dokuments zu erstellen und im Spool-Verzeichnis abzulegen. Genaugenommen ist es nicht zwangsläufig, dass dieses Gateway Farbe unterstützt. Im hier vorliegenden Beispiel wäre das entbehrlich, da das zu unterzeichnende Dokument selbst keine Farbanteile hat. Das Blau der Unterschriften wird erst später vom Gateway //Phase 2// in das Dokument eingebaut. \\ {{print2forms:sign2forms:monitorconfig.png}} Das Gateway //Phase 2// ist ein Verzeichnis-Monitor und muss gemäss des nebenstehenden Bildes eingerichtet werden. Die Aufgabe dieses Gateways ist, die von der (s2f)-App gesendeten Fotos der Unterschriften entgegenzunehmen, die Unterschriften aus den Fotos herauszufiltern, sie in %%PCL%% zu konvertieren und in das aus //Phase 1// bereitliegende Dokument einzubauen. Abschliessend wird aus der so entstandenen %%PCL-Datei%% ein %%PDF-Dokument%% gemacht. Das Spool-Verzeichnis muss immer eine Ebene höher ansetzen, als das Spool-Verzeichnis des Gateways //Phase 1//. \\ === PHP === Da im Rahmen der Testinstallation von (s2f) in PHP geschriebene Skripte zum Einsatz kommen, ist es natürlich notwendig, auf dem Testrechner eine funktionierende [[https://php.net|PHP-Installation]] zu haben. Diese kann entweder separat erfolgen oder im Rahmen der Installation eines Pakets wie //XAMPP//. Die Version von %%PHP%% spielt hier keine grosse Rolle - von 5.6 bis 7.2 ist alles einsetzbar. Die in diesem Wiki beschriebene Testinstallation geht davon aus, dass der Pfad zur //php.exe// in der Systemvariablen //PATH// enthalten ist, und die Aufrufe des %%PHP%%-Interpreters ohne Angabe des vollständigen Pfades erfolgen können. Ist das nicht der Fall, muss in den Befehlszeilen der beiden Gateways der vollständige Pfad zum Aufruf der //php.exe// angegeben werden! \\ \\ === App === Je nachdem, mit welchem Smartphone der Test von (s2f) durchgeführt werden soll, muss die (s2f)-App entweder aus dem [[https://play.google.com/store/apps/details?id=de.print2forms.signature|Google Play Store]] für Android oder aus dem [[https://itunes.apple.com/de/app/sign2forms/id1340840879?mt=8|Apple Store]] für iOS geladen werden. Für den Test ist es letztlich notwendig, dass das so ausgestattete Smartphone Zugriff auf den Web-Server im Client-/Gateway-Service bekommt. Die einfachste Möglichkeit ist, das Smartphone über WLAN (und eventuell über VPN) mit dem lokalen Netzwerk zu verbinden. Soll später im Produktivbetrieb von ausserhalb auf das Netzwerk zugegriffen werden, sind natürlich weitergehende Konfigurationen am jeweiligen Netzwerk notwendig, die meist von Einsatzfall zu Einsatzfall unterschiedlich sind und deshalb hier auch nicht weiter besprochen werden können. \\ \\ === Hinweise === * Es kann sein, dass sich während der Installation die Firewall des lokalen Rechners meldet, und anfragt, ob die Port-Nummer 55583 für ein Programm namens //p2fWebServer.exe// freigegeben werden darf. Das muss gestattet werden, weil sonst später die (s2f)-App nicht funktionieren kann (siehe Diagramm in [[print2forms:sign2forms:intern|Interner Aufbau und Ablauf von sign2forms]]). //p2fWebServer.exe// ist der Web-Server des Client-/Gateway-Services, der für die Nutzung von (s2f) gestartet werden muss. * Der (p2f) Installer Build 280 enthält noch einen für (s2f) relevanten Fehler bei der Positionierung von QR-Codes. Deshalb wird vom Installer die DLL mit Namen //p2fBarcode.dll// im Installationsverzeichnis von (p2f) ersetzt. Die dort befindliche Datei gleichen Namens wird in //p2fBarcode_old.dll// umbenannt. * Werden bei der Installation **GhostPCL** oder **%%PHP%%** mit installiert, muss für die Dauer der Installation eine **Verbindung ins Internet** zur Verfügung stehen. * Wird bei der Installation **%%PHP%%** mit installiert, wird vom Installer auch die notwendige **Laufzeitumgebung** (Redistributable) für Microsoft Visual Studio 2017 nachgeladen und installiert. * Der Installer für (s2f) ist nur in deutscher Sprache verfügbar. Er installiert - zumindest im Augenblick - 32-Bit-Versionen von %%PHP%% und %%GhostPCL%%. Wer unbedingt die 64-Bit-Versionen nutzen möchte, muss diese manuell installieren. * Wird PHP mit installiert, so ist vor der Installation auf Entwicklungsrechnern mit vielen Entwicklungsumgebungen zu prüfen, ob die Environment Variable PATH nicht länger als 8150 Zeichen ist. Ist sie länger, muss %%PHP%% manuell installiert werden.