Vorwort......................................................... 19 Teil A Einführung.................................................. 21 1 E-Mail-Marketing................................................ 23 1.1 Überblick: So arbeiten die Module zusammen................... 25 1.2 Fakten zu OpenEMM......................................... 27 1.2.1 Benutzeroberfläche.......................................... 27 1.2.2 Permission-Management..................................... 27 1.2.3 Empfängerdatenbank........................................ 27 1.2.4 Marketing mit Zielgruppen.................................... 28 1.2.5 Mailings erzeugen........................................... 28 1.2.6 Berichte und Statistiken...................................... 28 2 OpenEMM vorinstalliert........................................... 31 2.1 Systemvoraussetzungen..................................... 31 2.2 Installation des VMware-Players............................... 32 2.2.1 Einloggen und IP-Adresse ermitteln............................. 33 2.3 Konfiguration des Domain Name Service (DNS).................. 33 2.3.1 Redirection-Service.......................................... 33 2.3.2 Bounce-Management........................................ 34 2.4 Konfiguration von Sendmail.................................. 35 2.5 MySQL für Redirection-Services initialisieren.................... 35 2.6 OpenEMM starten........................................... 36 2.7 OpenEMM-Benutzeraccount anlegen........................... 38 Teil B Tutorials.................................................... 41 3 Beispiel 1: Mailing versenden...................................... 43 3.1 Wichtige OpenEMM-Begriffe.................................. 43 3.2 Mailing-Liste anlegen........................................ 44 3.3 Empfänger anlegen.......................................... 45 3.3.1 Basisdaten eintragen........................................ 45 3.3.2 Mailing-Liste abonnieren..................................... 47
3.4 Mailing anlegen und ausfüllen................................. 48 3.4.1 Neues Mailing anlegen...................................... 48 3.4.2 Mailing-Inhalt festlegen...................................... 49 3.4.3 Mailing überprüfen.......................................... 51 3.5 Mailing versenden........................................... 52 4 Beispiel 2: Empfängerspezifisches Mailing........................... 55 4.1 Empfängerprofil erweitern.................................... 56 4.1.1 Neue Felder anlegen........................................ 56 4.1.2 Empfängerprofil ändern...................................... 58 4.2 Zielgruppen definieren....................................... 60 4.3 Schablonen verwenden...................................... 62 4.3.1 Schablone anlegen.......................................... 63 4.3.2 Textbausteine einfügen...................................... 64 4.3.3 Individuelle Anrede......................................... 67 4.4 Aktionen anlegen........................................... 69 4.4.1 Empfängerprofile verändern.................................. 69 4.4.2 Abmelden vom Newsletter................................... 71 4.5 Mailing anlegen und versenden................................ 72 4.5.1 Eine Schablone anwenden................................... 72 4.5.2 Mail-Inhalte einfügen........................................ 73 4.5.3 Umgeleitete Links starten Aktionen............................ 74 4.5.4 Link zum Abmelden einfügen................................. 77 4.5.5 Mailing versenden.......................................... 77 4.6 Blacklist: Jede E-Mail blockieren............................... 78 5 Beispiel 3: An- und Abmeldeformulare............................... 81 5.1 Mailings anlegen............................................ 83 5.1.1 Aktionsgesteuertes Mailing für die Abmeldebestätigung.......... 83 5.1.2 Aktionsgesteuerte Mailings für das Double-Opt-In................ 85 5.2 Aktionen anlegen........................................... 87 5.2.1 Aktionen für die Anmeldung.................................. 87 5.2.2 Aktionen für die Abmeldung.................................. 91 5.3 Formulare anlegen.......................................... 92 5.3.1 Formulare für eine Anmeldung................................ 93 5.3.2 Formulare für eine Abmeldung................................ 99 8
Teil C Referenz.................................................... 103 6 Empfänger: Profildatenbank verwalten.............................. 105 6.1 Neue Empfänger anlegen..................................... 105 6.2 Empfängerprofile verwalten.................................. 107 6.2.1 Empfängerprofil anzeigen und ändern.......................... 108 6.2.2 Filter anwenden............................................. 109 6.2.3 Suchfunktion einsetzen...................................... 110 6.3 Daten importieren........................................... 113 6.3.1 Importdatei, Trennzeichen, Zeichensatz & Co.................... 113 6.3.2 Import-Modus und Dubletten.................................. 115 6.3.3 Zuordnung der CSV-Spalten................................... 118 6.3.4 Analyse der CSV-Datei........................................ 119 6.3.5 Analyse auf mögliche Fehler beim Import........................ 120 6.3.6 Auswahl der Mailing-Listen.................................... 121 6.3.7 Einlesen der CSV-Datei....................................... 122 6.3.8 Erzeugen einer CSV-Datei..................................... 122 6.4 Empfängerdaten exportieren.................................. 124 6.5 Empfängerprofil erweitern.................................... 126 6.5.1 Felder richtig planen......................................... 127 6.5.2 Neue Felder erzeugen........................................ 127 6.5.3 Bestehende Felder löschen.................................... 129 7 Mailing-Listen................................................... 131 7.1 Mailing-Listen anlegen und verwalten.......................... 131 7.2 Anmeldeverfahren für Mailing-Listen........................... 133 7.3 Abmeldeverfahren für Mailing-Listen........................... 134 8 Zielgruppen: Dynamische Filter..................................... 135 8.1 Zielgruppe anlegen.......................................... 135 8.2 Aufbau der Suchregeln....................................... 136 8.2.1 List-Splits mit MOD.......................................... 136 8.2.2 IS und NULL oder NOT NULL................................... 138 8.2.3 Datumsfunktionen........................................... 139 8.3 Kombinierte Suchregeln mit Klammern......................... 140 9 Mailings: Newsletter versenden.................................... 143 9.1 Mailing-Typen im Überblick................................... 143 9
9.2 Mail-Formate im Überblick.................................... 144 9.2.1 Text...................................................... 144 9.2.2 HTML..................................................... 144 9.2.3 Offline-HTML............................................... 145 9.2.4 Multi-Part-E-Mails.......................................... 145 9.3 Neues Mailing anlegen....................................... 146 9.3.1 Globale Angaben zum Mailing................................ 147 9.3.2 Zielgruppen auswählen...................................... 148 9.3.3 E-Mail-Basisdaten eintragen.................................. 150 9.4 Mailings verwalten.......................................... 152 9.4.1 Übersicht aller Mailings...................................... 152 9.4.2 Mailing kopieren............................................ 154 9.4.3 Schablonendaten anzeigen................................... 155 9.5 E-Mail-Inhalt festlegen....................................... 156 9.5.1 Arbeitsprinzip von OpenEMM................................. 156 9.5.2 Textbausteine einrichten..................................... 157 9.5.3 Spezifizität der Zielgruppen beachten.......................... 160 9.6 Dynamische Inhalte erzeugen................................. 162 9.6.1 Personalisierte Anrede...................................... 162 9.6.2 Textbausteine mit OpenEMM-Tags einfügen..................... 163 9.7 Grafik-Komponenten einbinden................................ 167 9.7.1 Grafik hochladen und einbinden............................... 168 9.8 Dateianhänge verwenden.................................... 169 9.9 Mailing testen und versenden................................. 172 9.9.1 Vorschaufunktion genau prüfen............................. 172 9.9.2 Probeversand von Test-Mails................................. 173 9.9.3 Mailing abschicken......................................... 174 9.10 Datumsgesteuertes Mailing................................... 176 9.10.1 Empfängerdatenbank erweitern............................... 176 9.10.2 Zielgruppe anlegen......................................... 177 9.10.3 Datumsgesteuertes Mailing anlegen........................... 178 9.11 Messbare Links konfigurieren................................. 180 9.11.1 Einen messbaren HTML-Link erstellen.......................... 180 9.11.2 Einen Link in der Text-Version erstellen......................... 181 9.11.3 Messbare und nicht messbare Links........................... 181 10
10 Schablonen...................................................... 183 10.1 Was sind Schablonen?....................................... 183 10.2 Schablonen verwalten....................................... 184 10.2.1 Neue Schablone anlegen..................................... 184 10.2.2 Schablone kopieren.......................................... 185 10.2.3 Schablone löschen.......................................... 186 10.3 Schablonen anwenden....................................... 187 11 Aktionen........................................................ 189 11.1 Arbeitsweise von Aktionen................................... 190 11.1.1 Aktion anlegen und verwalten................................. 190 11.1.2 Messbare Links mit Aktionen verknüpfen........................ 192 11.2 Profil-Modifikation durchführen............................... 194 11.3 Aktionsbasiertes Mailing versenden............................ 196 11.3.1 Nachfolge-Mailing definieren.................................. 197 11.3.2 Aktion definieren............................................ 198 11.4 Closed-Loop-Marketing ein Beispiel.......................... 200 11.4.1 Empfängerprofil erweitern.................................... 201 11.4.2 Aktionen definieren.......................................... 202 11.4.3 Messbare Links mit Aktionen verbinden......................... 203 12 Formulare: Selbstverwaltung...................................... 207 12.1 Was sind Formulare?........................................ 207 12.2 So funktionieren Formulare................................... 207 12.3 Beispiel: Ändern eines Benutzerprofils......................... 209 12.3.1 Neue Aktionen anlegen....................................... 210 12.3.2 Formular zum Anzeigen anlegen............................... 212 12.3.3 Formular zum Speichern anlegen............................... 215 12.4 Beispiel: Anmeldeformular................................... 218 12.4.1 Neue Aktion anlegen......................................... 218 12.4.2 Formular zur Dateneingabe anlegen............................ 219 12.4.3 Formular zum Speichern anlegen............................... 222 12.4.4 Anmeldeformular aufrufen.................................... 223 12.5 Beispiel: Anmeldung mit Double-Opt-In......................... 223 12.5.1 Aktionsgesteuertes Mailing anlegen............................ 224 12.5.2 Neue Aktionen anlegen....................................... 225 12.5.3 Neue Formulare anlegen...................................... 226 12.5.4 Anmeldeformular aufrufen.................................... 228 11
12.6 Beispiel: Abmeldeformular................................... 230 12.6.1 Neue Aktion anlegen........................................ 230 12.6.2 Neue Formulare anlegen..................................... 230 12.6.3 Abmeldeformular aufrufen................................... 232 12.7 Erweiterte Formulargestaltung................................ 232 12.7.1 Eingabefelder ersetzen...................................... 233 12.7.2 HTML-Formular dynamisch erzeugen........................... 235 13 Kampagnen: Mailings ordnen...................................... 237 13.1 Kampagnen verwalten....................................... 237 13.1.1 Neue Kampagne anlegen..................................... 237 13.1.2 Details anzeigen und ändern.................................. 238 13.1.3 Kampagne löschen.......................................... 239 13.2 Mailings einer Kampagne zuweisen............................ 239 13.2.1 Bestehende Mailings zuordnen............................... 240 13.2.2 Neue Mailings zuordnen..................................... 241 14 Statistik......................................................... 243 14.1 Empfänger-Statistik......................................... 243 14.2 Mailing-Statistik............................................ 246 14.2.1 Details zu einzelnen Mailings anzeigen......................... 247 14.2.2 Mehrere Zielgruppen vergleichen.............................. 249 14.2.3 Feedback-Analyse.......................................... 250 14.3 Mailings vergleichen......................................... 251 14.4 IP-Statistik................................................. 253 14.5 Domain-Statistik............................................ 253 14.6 Statistische Daten exportieren................................ 254 15 Einstellungen und Benutzer........................................ 257 15.1 Einstellungen............................................... 257 15.1.1 Felder verwalten............................................ 257 15.1.2 Blacklist: Zustellung verboten................................ 258 15.1.3 Anredearten für Mailings..................................... 259 15.1.4 Bounce-Filter............................................... 260 15.2 Benutzer verwalten.......................................... 262 15.2.1 Neuen Benutzer anlegen..................................... 263 15.2.2 Benutzerrechte einstellen.................................... 264 15.2.3 Überblick über die Benutzerrechte............................. 265 12
Teil D Technik.................................................... 269 16 Installation...................................................... 271 16.1 Systemvoraussetzungen..................................... 271 16.2 Red Hat Linux (Red Hat, CentOS).............................. 272 16.2.1 Betriebssystem vorbereiten................................... 272 16.2.2 Sun Java SDK 5 installieren.................................... 273 16.2.3 Firewall anpassen........................................... 274 16.2.4 DNS-Konfiguration........................................... 275 16.2.5 Konfiguration von Sendmail................................... 276 16.2.6 OpenEMM 5.0 installieren..................................... 277 16.3 SUSE Linux, opensuse, Fedora Core........................... 279 16.3.1 Betriebssystem vorbereiten................................... 279 16.3.2 Sun Java SDK 5 installieren.................................... 280 16.3.3 Firewall anpassen........................................... 281 16.3.4 DNS-Konfiguration........................................... 282 16.3.5 Konfiguration von Sendmail................................... 283 16.3.6 OpenEMM 5.0 installieren..................................... 285 16.4 Debian 3.1 (Sarge).......................................... 287 16.4.1 Betriebssystem vorbereiten................................... 287 16.4.2 Sun Java SDK 5 installieren.................................... 287 16.4.3 Firewall anpassen........................................... 289 16.4.4 DNS-Konfiguration........................................... 289 16.4.5 Konfiguration von Sendmail................................... 291 16.4.6 OpenEMM 5.0 installieren..................................... 292 16.5 OpenEMM starten........................................... 294 16.6 Deinstallation.............................................. 296 16.7 OpenEMM über Port 80 betreiben............................. 296 16.7.1 Voraussetzungen für die Portumleitung......................... 296 16.7.2 Konfiguration als Redirection-Server............................ 297 17 Tipps & Tricks................................................... 299 17.1 Redirector-Domain ändern.................................... 299 17.2 Kompatibilität von Zeichensätzen.............................. 299 17.3 Zeichensätze: UTF-8......................................... 301 17.4 Zeichensätze: Formulare ohne UTF-8........................... 303 17.5 Links mit dem Zeichen & verursachen Probleme.................. 304 17.6 Einen neuen Zeichensatz ergänzen............................. 304 13
18 Troubleshooting.................................................. 309 18.1 Passwort für OpenEMM zurücksetzen.......................... 309 18.2 Redirection-Links funktionieren nicht........................... 309 18.3»404 not found«statt Weboberfläche.......................... 310 18.4 OpenEMM beim Linux-Start hochfahren......................... 310 18.4.1 Shell-Skript................................................ 310 18.4.2 Lösung Red Hat/CentOS..................................... 311 18.5 Sendmail-Fehler............................................ 311 18.5.1 Sendmail-Probleme diagnostizieren........................... 312 18.5.2 Sendmail ist nicht MTA...................................... 312 18.5.3 Kein Versand normaler E-Mails................................ 313 18.6 Auslieferungsstatus ändert sich nicht........................... 314 19 Für Entwickler.................................................... 315 19.1 Dokumentation für Programmierer............................. 316 19.1.1 Datenbankschema.......................................... 316 19.1.2 Klassenliste................................................ 316 19.1.3 Plugin-Schnittstelle......................................... 317 19.2 Skriptsprache Velocity....................................... 317 19.2.1 Empfängerdaten über Variable abfragen........................ 318 19.2.2 Empfänger-ID über Variable abfragen.......................... 320 19.2.3 If-Abfragen einsetzen........................................ 320 20 Ausblick......................................................... 323 Anhang............................................................ 327 A OpenEMM-Tags.................................................. 329 B Datenbankaufbau................................................. 335 B.1 admin_group_permission_tbl................................. 336 B.2 admin_group_tbl............................................ 337 B.3 admin_permission_tbl....................................... 337 B.4 admin_tbl.................................................. 337 B.5 bounce_collect_tbl.......................................... 338 B.6 bounce_tbl................................................. 338 B.7 campaign_tbl............................................... 339 B.8 company_tbl............................................... 339 B.9 component_tbl............................................. 339 14
B.10 cus_ban_tbl................................................ 340 B.11 customer_1_binding_tbl..................................... 340 B.12 customer_1_tbl............................................. 341 B.13 customer_1_tbl_seq......................................... 341 B.14 customer_field_tbl.......................................... 341 B.15 customer_import_errors_tbl.................................. 342 B.16 customer_import_status_tbl.................................. 342 B.17 datasource_description_tbl................................... 343 B.18 dyn_content_tbl............................................ 343 B.19 dyn_name_tbl.............................................. 344 B.20 dyn_target_tbl.............................................. 344 B.21 emm_layout_tbl............................................ 344 B.22 export_predef_tbl........................................... 345 B.23 maildrop_status_tbl......................................... 345 B.24 mailing_account_tbl......................................... 346 B.25 mailing_backend_log_tbl..................................... 346 B.26 mailing_mt_tbl............................................. 347 B.27 mailing_status_tbl.......................................... 347 B.28 mailing_tbl................................................. 347 B.29 mailinglist_tbl.............................................. 348 B.30 mailloop_tbl............................................... 348 B.31 mailtrack_tbl............................................... 349 B.32 onepixel_log_tbl............................................ 349 B.33 rdir_action_tbl.............................................. 350 B.34 rdir_log_tbl................................................ 350 B.35 rdir_url_tbl................................................. 350 B.36 rulebased_sent_tbl.......................................... 351 B.37 softbounce_email_tbl........................................ 351 B.38 tag_tbl.................................................... 352 B.39 timestamp_tbl.............................................. 352 B.40 title_gender_tbl............................................ 352 B.41 title_tbl................................................... 353 B.42 userform_tbl............................................... 353 15
C Klassenliste..................................................... 355 C.1 Haupt-Konfigurationsdateien................................. 355 C.2 JSP-Dateien................................................ 356 C.2.1 Top-Level-JSP-Dateien....................................... 356 C.2.2 JSP-Dateien für Menüseiten.................................. 357 C.2.3 JSP-Dateien für Seiten des Aktionen-Menüs..................... 357 C.2.4 JSP-Dateien für Seiten des Kampagne-Menüs.................... 358 C.2.5 JSP-Dateien für den Export-Assistenten......................... 358 C.2.6 JSP-Dateien des Import-Assistenten............................ 358 C.2.7 JSP-Dateien für das Mailing-Menü............................. 359 C.2.8 JSP-Dateien für den Menüpunkt Mailing-Listen.................. 361 C.2.9 JSP-Dateien für den Menüpunkt Empfänger..................... 361 C.2.10 JSP-Dateien für den Menüpunkt Statistik....................... 361 C.2.11 JSP-Dateien für den Menüpunkt Zielgruppen.................... 363 C.2.12 JSP-Dateien für den Menüpunkt Formulare...................... 363 C.2.13 C.2.14 JSP-Dateien für die Benutzerverwaltung im Menüpunkt Einstellungen................................. 363 JSP-Dateien für die Blacklist-Verwaltung im Menüpunkt Einstellungen................................. 363 C.2.15 JSP-Dateien für den Bounce-Filter im Menüpunkt Einstellungen..... 364 C.2.16 JSP-Dateien für die Feldverwaltung im Menüpunkt Einstellungen... 364 C.2.17 JSP-Dateien für die Anredearten im Menüpunkt Einstellungen...... 364 C.3 COMMON JAVABEANS....................................... 365 C.3.1 Schnittstellenklassen der OpenEMM-JavaBeans................. 365 C.4 JavaBeans mit Business Logic................................. 366 C.4.1 Schnittstellen und Implementationsklassen für action beans....... 366 C.4.2 Schnittstellen und Implementationsklassen für Statistik-Beans..... 367 C.4.3 Schnittstelle und Implementierungsklassen für Zielgruppen-Beans....................................... 368 C.5 Klassen für Aktionen und FormBean............................ 368 C.5.1 Struts-Action-Klassen (für die Business Logic) und FormBean-Klassen (für Formulardaten)......................... 368 C.6 Utility, OpenEMM-Tags und andere Klassen..................... 371 C.6.1 Utility-Klassen.............................................. 371 C.6.2 Klassen für OpenEMM-Tags.................................. 372 C.6.3 Andere Klassen............................................. 373 16
C.7 Persistenz-Layer............................................ 374 C.7.1 Schnittstellenklassen des Persistenz-Layer...................... 374 C.7.2 ImpIementierungsklassen des Persistenz-Layer.................. 374 C.7.3 Hibernate O/R Mapping-Dateien für Persistenz-Layer-Klassen...... 375 C.8 Eigenschaftendateien........................................ 375 C.8.1 Sprachdateien mit Zeichenketten für Nachrichten-Tags............ 375 C.8.2 Eigenschaftendateien mit Zeichenketten für Fehler- und Lösungsnachrichten......................................... 376 C.8.3 Eigenschaftendateien für die Navigationsleiste................... 376 C.9 Verschiedenes.............................................. 376 C.10 Backend-Mail-Generierung................................... 377 C.10.1 Kontrolldateien im XML-Format................................ 377 C.10.2 E-Mail-Generierungsprogramm XMLBACK........................ 379 C.11 Validator für Bounce-Adressen................................ 382 C.11.1 C-Code für die Implementierung des Bounce-Adressen-Validators... 382 C.11.2 Kontrolldateien für den Bounce-Adressen-Validator............... 382 C.12 Kontrollskripte............................................. 383 C.12.1 Shell-Skripte zum Starten und Stoppen von OpenEMM............ 383 C.12.2 Skripte, die die Logik für die Kontrollskripte implementieren........ 384 C.13 Bibliotheken und Tools...................................... 384 C.13.1 Intern benutzte C-Bibliotheken................................ 384 C.13.2 Tools in C.................................................. 385 C.13.3 Intern benutzte Skriptbibliothek............................... 386 Stichwortverzeichnis.............................................. 387 17