Ich habe Stunden der Forschung und kam zu dieser Schlussfolgerung - Javascript in Acrobat ist wie der Versuch, 1985 zu programmieren UND Browser werden nicht ausführen, was Code Sie kommen mit.
So habe ich diese Abhilfe:
- Als ich das PDF an jemanden senden, ich es als eine Verbindung mit einem
base64
codierten Zeichenfolge JSON-Paket senden, die eine Reihe von Tracking Daten enthalten, aber wichtiger ist, die Name der Datei sowie utm Parameter für den Zugriff auf die spezifisch für den Empfänger
- der Link trifft einen Server-Handler (NodeJS), die die codierten JSON-Paket extrahiert und verwendet die Daten in dem Paket eine HTML-aufzutischen Umleitung Seite zeigt auf die rechts PDF-Datei
- Wichtig ist, speichert die HTML-Seite auch das JSON-Paket in Browser
localStorage
. . . Das ist praktisch, in der nachfolgenden Schritten
- Die PDF-Datei in Browser öffnet (es nicht zu, hat auf Desktop geöffnet werden konnte) und der Aufruf zum Handeln Link einen Link zu einer Get-Anforderung Handler
hat
- die get-Request-Handler dient Diese zweite Umleitungsseite greift der Browser des lokalen Speicher wieder einen einzigen umadressierenseite
- auf, schaut für die UTM-Parameter I für diesen Benutzer festgelegt, und leitet dann zum verkaufen Seite, mit schönen utm Parameter angebracht
Zusammenfassend fügen Sie die utm-Parameter nicht dem Call-to-Action-Link in der PDF-Datei hinzu (weil das die Welt zu einfach zum Leben machen würde) und stattdessen machen Sie all diese Akrobatik (kein Wortspiel beabsichtigt) zum Anhängen utm Parameter in den Link klickt (über JSON Strings in localStorage
gespeichert) während des Prozesses (dh wenn der Benutzer die E-Mail öffnet, um die Datei über den Link zu extrahieren, und wenn der Benutzer im PDF auf Call-to-Action klickt.
Fragen oder Erläuterungen bitte lassen Sie mich in den Kommentaren wissen, und ich werde mein Bestes tun, um zu adressieren.
Caveats
- funktioniert nur, wenn der Benutzer denselben Browser in allen Schritten verwendet (dh, wenn Susan die E-Mail in Safari öffnet, speichert die PDF, dann klickt auf den Aufruf zum Handeln in der PDF, und den Link öffnet in Chrome, utm Parameter werden nicht übergeben).
- Geht davon Browser ist modern und hat
localStorage
UPDATE: Ich über eine andere Lösung kam. Es ist ein bisschen komplizierter. Diagramm unten.
Porky.io ist eine Erweiterung Javascript für Adobe Indesign. So Fluss:
- Porky.io senden die Kundendaten, die Sie benötigen (zB alarm UTM für Links)
- Porky.io erzeugt PDF aus einer Vorlage, die Sie mit den Kundendaten liefern Sie zur Verfügung gestellten
- für ein Hören neue Datei von Porky speichern
- etwas mit der Datei durchführen (zB es Kunden eine E-Mail)
ich glaube, Sie brauchen eine Instanz von Windows irgendwo in der Cloud (zB auf Azure) laufen Indesign mit der laufen Porky.io. Es sei denn, Sie wollen sich auf Ihren Laptop verlassen.
Mein Projekt ist noch nicht groß genug, um dies einzurichten. . . aber gute Alternative, wenn ich meine aktuelle Lösung robuster machen muss.
danke - technisch korrekt, obwohl ich gelernt, Browser werden nicht Acrobat-Code ausführen. Siehe Antwort, die ich zur Problemumgehung gepostet habe, die perfekt für mich funktioniert. – martellalex