Für die diversen EMails, die der GeoShop versendet, können EMail Templates erstellt werden. Diese EMail Templates können Variablen enthalten, die während Anwendung mit den effektiven Werten ersetzt werden.
Die EMail Templates werden pro Sprache wie folgt abgelegt:
GEOSHOP_DIR\user\template\<language>\*.*
Als <language>
werden die ISO Codes
de,en,it,fr
verwendet.
Als Files für die EMail Templates können Textfiles oder HTML Files verwendet werden.
Textfiles dürfen keine Extension aufweisen.
HMTL Files müssen die Extension html
aufweisen.
EMail Templates sind folgende.
EMail Template | Beschreibung |
confirm_email | EMail zur Bestätigung Bestellung. |
deliver_email | EMail zur Lieferung Bestellung. |
upload_error | EMail zur Meldung Upload Daten mit Fehler. |
confirm_email | EMail zur Meldung Upload Daten erfolgreich. |
Beispiel eines EMailTemplates confirm_email
als
Textfile.
Sehr geehrter GeoShop Kunde Danke fuer Ihre Bestellung. Ihre Bestellung wurde wie folgt registriert: Bestellungsnummer: %orderno% Produkt: %product% Ebenen: %topics% Bereich: %OPT.selection_image% Lieferart: %shipping% Sobald die bestellten Daten zum Download bereit sind, werden Sie ueber eine zweite E-Mail benachrichtigt. Mit freundlichen Gruessen infoGrips GmbH E-Mail : info@infogrips.ch Telefon: 01 350 10 10
Templates in HTML werden am besten mit einem HTML Editor erstellt.
Variable in den Templates werden mit dem Prozentzeichen umfasst.
Je nach Prozessart Upload oder Downlaod und Prozesszustand stehen diverse Variablen zur Verfügung. Im Ablauf des Prozesses können zum Teil auch zusätzliche Variablen definiert werden, zum Beispiel in der Preisberechnung.
Der GeoShop und die Konfigurationen senden diverse Mails bei Uploads, Downloads, Checks etc. Die Mails beinhalten Standard-Betreffs und -Inhalte. Alle Mails können über eine zentrale Konfiguration bei Bedarf bearbeitet werden, bevor diese endgültig versendet werden. Angepasst werden können Betreff, Inhalt, Empfänger, Absender, Anhänge etc.
Dieses Kapitel beschreibt wie die Mail-Konfiguration aufgerufen werden kann und wie der Input und Output aussieht.
GEOSHOP_DIR\user\options\appserver.opt
MAP AppServer MAP : SEND_EMAIL_SCRIPT STRING \script\email\email.cfg DEBUG_EMAIL STRING OFF : } :
SEND_EMAIL_SCRIPT
Definiert das Skript, dass die Mails bearbeiten kann.
DEBUG_EMAIL
Mit den Werten ON|OFF
definiert den
Debug-Modus für den Skript. Mit dem Debug-Modus
ON
werden die Anteile Log, Input und Output
im Verzeichnis geoshop\data\temp
abgelegt.
Das Skript erhält in der Option OPT.input
ein File, das die
Parameter des Mails beinhaltet. Die OPT.input
Datei
ist im Serial-Format und kann mit der Methode
SERIAL.LOAD_OBJECT
geladen werden.
OPT.input
Input-Parameter:
Parameter | req/opt | Beschreibung |
dest | r | STRING Mail Zieldresse. |
subject | r | STRING Betreff der Mail. |
content | r | STRING Inhalt der Mail in einer
Datei abgelegt. |
cc | o | STRING kommaseparierte Liste von
cc-Mailadressen. |
attach | o | LIST mit
STRINGS's Liste mit
Mail-Anhängen. |
job | o | STRING Job-Nummer eines
eventuelles Upload- oder Download Prozesses. Über die
Job-Nummer können bei Bedarf weitere Optionen des Prozesses
gelesen werden aus
geoshop\data\temp\<job>\ics.opt
. |
Beispiel:
MAP dest STRING info@infogrips.ch subject STRING 'dies ist ein Test' content STRING c:\geoshop\data\temp\3456\email.txt attach LIST STRING c:\geoshop\data\temp\3456\email.zip } job STRING 3456 }
Der Skript erhält in der Option OPT.output
eine Datei, in die
veränderte Parameter der Mail geschrieben werden können. Die Datei ist
im Serial-Format und kann mit der Methode
SERIAL.WRITE_OBJECT
geschrieben werden. Die
Output-Datei ist optional. Wird die Output-Datei nicht geschrieben,
entspricht die Mail dem Input.
OPT.output
Output-Parameter:
Parameter | req/opt | Beschreibung |
dest | r | STRING Mail Zieladresse. |
subject | r | STRING Betreff der Mail. |
content | r | STRING Inhalt der Mail in einer
Datei abgelegt. |
cc | o | STRING kommaseparierte Liste von
cc-Mailadressen. |
attach | o | LIST mit
STRING's Liste mit Mail-Anhängen. |
abort_email | o | STRING Ist dieser Parameter
gesetzt, wird die Mail nicht gesendet. |
Beispiel:
MAP dest STRING info@infogrips.ch subject STRING 'Updated: dies ist ein Test' content STRING c:\geoshop\data\temp\3456\email.txt attach LIST STRING c:\geoshop\data\temp\3456\email.zip } }
Soll eine Mail verändert werden, so liest man am einfachesten die
Datei OPT.input
in eine Map, verändert die Parameter
in der Map und schreibt die Map in die Datei
OPT.output
.
Beispiel
geoshop\user\script\email\email.cfg
:
! mail input get !--------------- IF OPT.input SERIAL.LOAD_OBJECT NOT THEN 'input not there: ' . OPT.input EXIT END_IF => VAR.MAIL_MAP ! job service read !---------------- '' => VAR.SERVICE IF 'VAR.MAIL_MAP.job' EXISTS THEN OPT.data_dir . '\temp\' . VAR.MAIL_MAP.job . '\ics.opt' => VAR.OPT_FILE IF VAR.OPT_FILE TEXTFILE.OPEN THEN => VAR.FID WHILE VAR.FID TEXTFILE.READLN DO EXTRL => VAR.NAME => VAR.VALUE IF VAR.NAME = 'service' THEN VAR.VALUE => VAR.SERVICE BREAK END_IF END_WHILE VAR.FID TEXTFILE.CLOSE END_IF END_IF ! subject change !--------------- 'my edited subject from service ' . VAR.SERVICE => VAR.MAIL_MAP.subject IF OPT.output &VAR.MAIL_MAP SERIAL.SAVE_OBJECT NOT THEN 'output can not be written: ' . OPT.output EXIT END_IF