Neu E-Mail Versand in JTL - Absender ändern

Hanfhandel

Aktives Mitglied
15. November 2022
33
12
Das Feature um Absender Namen von E-Mails selbst definieren zu können wird hier im Issue Ticket schon lange diskutiert, ist aber von JTL noch immer nicht umgesetzt.
Daher hab ich mich Abends mal hingesetzt und einen eigenen kleinen SMTP Forwarding Server (in python) geschrieben.
[Danke an Tim S. Kommentar vom 16.03.2023 - denke das Script hier hat keine Limits bzgl der E-Mail Länge]

E-Mail Änderungen per Filter
Die Idee dabei ist, dass der Forwarding Server den Absender ändert - anhand von "Filtern", welche getriggert werden.
Trigger können dabei E-Mail Adressen des Absenders sein oder auch einzelnen Wörter im Betreff.

Somit kommen Mails beim Kunden nicht mehr als "Meine Beispiel GmbH" - sondern mit dem Absender "My Great Onlineshop" an.

Hat man verschiedene Mail Vorlagen, so kann man anhand von Trigger Wörtern im Betreff einen anderen Filter nutzen.
Bsp: Setzt man den Trigger auf "Rechnung", so könnten E-Mails mit dem Betreff "Ihre Rechnung vom 12.03.2022" vom Absender "Great Onlineshop - Buchhaltung" versandt werden.

Oder wenn die Mail Vorlage so eingestellt ist, dass sie den Nutzername im Betreff mit reinschreibt, kann man darauf triggern lassen, dann aber das Triggerwort durch einen beliebigen String (ich empfehle einen leeren String) ersetzen lassen.
Somit würde aus dem E-Mail Betreff "Nutzer1 Ihr Angebot von Great Onlineshop" der Betreff "Ihr Angebot von Great Onlineshop" und man kann die E-Mail über das Konto "nutzer1@my-onlineshop.com" versenden.

Auch ist es möglich den Trigger auf die E-Mail Adresse zu legen, welche die E-Mail versendet.
So können Mails von "firma1@my-onlineshop.com" einen anderen Filter triggern (und durch den Filter versendet werden), als E-Mails welche über "firma2@my-onlineshop.com" verschickt werden sollen.
Wenn also verschiedene Firmen in der JTl-WaWi eingetragen sind, kann eine einzelne Forwarder-Instanz den Versand von E-Mails mehrerer Firmen abdecken.

Funktionsweise und Features
Da Bilder mehr sagen als Worte, hier der Ablaufplan wie im JTL E-Mails versendet werden und wie der SMTP Forwarding Server eingreift.

jtl_email_send_original.png

jtl_email_send_geändertl.png

Der SMTP Forwarder muss dabei auf einem Server laufen, der vom JTL-Server selbst und von allen JTL Clients aus erreichbar ist.
Ideal ist hier der Windows Server selbst, auf dem die JTL-WaWi läuft.

Da der Forwarder dadurch (oft) öffentlich erreichbar ist, kann man den SMTP Server im Forwarder einstellen auf
- Authentifizierung via username / password
- Verschlüsselung mit STARTTLS mit selbst generiertem SSL-Zertifikat
- IP Ban (für y Minuten) nach X fehlerhaften Versuchen

Als Client zum (externen) SMTP Server unterstützt der SMTP Forwarder alle gängigen Methoden der Verschlüsselung und Authentifizierung.

Installation und Inbetriebnahme
Ich hab das Script auf Python 3.11 auf Windows entwickelt. (Linux tests habe ich noch keine durchgeführt)

Im Anhang findet Ihr das python Script in der aktuellen TEST-Version 0.51
Zudem die requirements.txt (welche Module eure Python Umgebung benötigt)

In der ZIP ist außerdem ein Script zum Versenden von Mails mitgeliefert, um die Funktionsweise der Filter einfach testen zu können.
Alternativ könnt ihr auch den Mail Client eurer Wahl nutzen und auf den Forwarder konfigurieren.

Die benötigten Module können mittels "pip install -r requirements.txt" installiert werden.
Falls Verschlüsselung aktiviert sein soll: OpenSSL muss auf dem Host installiert sein. Das Script generiert die SSL-Zertifikate dann selbst.

Wenn das Script "SMTP-Forwarder-JTL_v0.51.py" das erste mal gestartet wird, erzeugt es eine ausgiebig kommentierte Config Datei (im Text Format - TOML).
Dort müsst ihr die Einstellungen zum Mailversand(Filter) und zur Authentifizierung von Clients setzen.

Zum Testen empfehle ich das Script erstmal auf dem eigenen Rechner lokal laufen zu lassen und sich selbst (mittels des Scripts 'smtp_client_test_message.py') E-Mails zu senden um die Config Einstellungen und das Filter Handling zu verstehen. Zudem sollte die 'Ausführliche Ausgabe' (in der Config) aktiviert sein damit ihr seht was passiert.

Es wird auch eine LOG Datei geschrieben. Deren Detailgrad ist einstellbar.

Hinweis
Um aus JTL heraus E-Mails an den SMTP-Forwarder [mit aktivierter Verschlüsselung] senden zu können, muss die Verschlüsselung auf
STARTTLS ohne Zertifikatsprüfung gestellt sein (das generierte SSL Zertifikat ist self signed und kann daher nicht gegen eine Zertifizierungsstelle geprüft werden)
Screenshot 2024-01-24 080842.png


Das Script wird hier "so wie es ist" zur Verfügung gestellt und kann beliebig abgeändert werden. (GNU GPL)
Diese Software wendet sich direkt an Admins.
Man muss mindestens im Stande sein python Module zu installieren und in einer Config Datei Werte nach bestem Wissen zu setzen.
Außerdem greift man in den Mail- Workflow seiner WaWi ein.

Wenn Euch nicht klar ist, was ihr hier tut, lasst die Finder davon und fragt euren Admin.

Feedback und Verbesserungen gerne hier oder direkt per E-Mail.
 

Anhänge

  • SMTP-Forwarder-JTL_v0.51.zip
    15,7 KB · Aufrufe: 26
Zuletzt bearbeitet:
Ähnliche Themen
Titel Forum Antworten Datum
Neu Exchange Konto kann nicht eingerichtet werden für E-Mail Versand User helfen Usern - Fragen zu JTL-Wawi 1
Kein E-Mail-Versand von Versandbestätigung und Zahlungsbestätigung JTL-Wawi 1.10 0
Dropshipping-Trackingnummer erzeugt keine Versandbenachrichtigung per E-Mail JTL-Wawi 1.8 2
Mail geht an Rechnungsmail satt an Liefermail JTL-Wawi 1.11 1
Neu Wokflow alle Sendenummer in eine Mail User helfen Usern - Fragen zu JTL-Wawi 2
Neu Wo verändere ich die Variable #firma.name# die in Mail-Vorlagen zu finden ist? Allgemeine Fragen zu JTL-Shop 2
Kundennummer wird in E-Mail-Bestellung nicht angezeigt JTL-Wawi 1.10 0
Neu Bestellung per Mail, Kunde registriert sich im Nachgang, Bestellung nicht im Kundenkonto User helfen Usern - Fragen zu JTL-Wawi 2
Datenfiltereinstellung funktioniert bei Mail Vorlage nicht. JTL-Wawi 1.9 2
Neu Bewusst deaktivierte Mail-Vorlagen erscheinen als Core Error im Logbuch Betrieb / Pflege von JTL-Shop 5
Neu Sendungsnummern per Mail versenden bei mehreren Paketen User helfen Usern - Fragen zu JTL-Wawi 6
Artikelposition Versand keine Bezeichnung JTL-Wawi 1.11 2
Bundles / Stücklisten + Mehrpaket-Versand → keine Sendungsnummern in Shopify JTL-Wawi 1.9 0
Neu Pickliste hängt fest – Aufträge gesperrt, nicht in Versand sichtbar User helfen Usern - Fragen zu JTL-Wawi 3
Neu JTL übernimmt immer Standard Versand von Amazon Amazon-Anbindung - Fehler und Bugs 0
Neu Referenznummer Grösse auf den Versand Etiketten von DPD-Cloudservice und GLS Api JTL-ShippingLabels - Ideen, Lob und Kritik 0
Artikel Gehen nicht aus In Aufträge raus nach Versand JTL-Wawi 1.11 1
Neu JTL-Shop Verkauf - Tipps? Business Jungle 2
Neu Frage zur Übertragung von JTL -> Shopify Shopify-Connector 1
Neu Installation JTL-Wawi 1.5.55.8 - Startet Grundsätzlich im Report-/Druckmodul Installation von JTL-Wawi 3
Rechnungen an Rechnungspostfächer von Kunden schicken ohne dass JTL auch andere Dokumente dorthin schickt? JTL-Wawi 1.11 3
Neu [Erledigt] Installationsdatei JTL‑Wawi 1.5.55.8 erhalten! Installation von JTL-Wawi 0
Neu JTL Exportformat Google - Produkte fehlen im Export Plugins für JTL-Shop 0
Neu Shipping by JTL (Shipping 2.0) JTL-ShippingLabels - Ideen, Lob und Kritik 12
Neu Shipping by JTL (Shipping 2.0) News, Events und Umfragen 0
Neu Kategoriestruktur auf JTL-Wawi in WooCommerce Shop darstellen WooCommerce-Connector 2
Neu Zwei eBay-Aufträge (identische Adresse) zusammen versenden, aber getrennte Rechnungen behalten – JTL-Wawi 1.9.6.5 User helfen Usern - Fragen zu JTL-Wawi 1
Neu Artikel Rücknahme über Kassenbon von letzter Woche in JTL-Pos JTL-POS - Ideen, Lob und Kritik 2
JTL-WAWI Datenbankprofil für neue Windows Benutzer JTL-Wawi 1.11 2
Neu GPSR Herstellerinformationen JTL Wawi 1.9.6.4 anbinden User helfen Usern - Fragen zu JTL-Wawi 0
Neu Langfristiger JTL-Partner gesucht: Shopware 6 / Marktplätze (Mirakl, Otto, Kaufland) & Prozess-Optimierung Dienstleistung, Jobs und Ähnliches 1
Neu DSGVO – Automatisierte Löschung von Kundendaten nach 10 Jahren (JTL-Wawi / JTL-Shop) User helfen Usern - Fragen zu JTL-Wawi 1
Neu Erstabgleich Showpare6 zu JTL-WaWi Shopware-Connector 0
Neu LS POS oder JTL POS ? Fragen rund um LS-POS 2
Neu kann man JTL POS alleine nutzen für 29 Euro? Einrichtung / Updates von JTL-POS 0
Update von 1.11.6 auf 1.11.7: JTL Worker verbindet nicht mehr mit Datenbank (WaWi schon) JTL-Wawi 1.11 1
Neu Repricer Erfahrungen mit JTL gesucht User helfen Usern - Fragen zu JTL-Wawi 0
Artikel Eigene Felder kommen nur beim ersten Shopabgleich in den JTL-Shop JTL-Wawi 1.11 2
JTL-WaWi 11.5 WMS Mobile Server sehr hohe CPU Auslastung JTL-Wawi 1.11 2
Neu welche Sync Benutzer Daten in Shop und WAWI bei neu-Hosting über JTL Allgemeine Fragen zu JTL-Shop 0
Neu JTL WMS und WMS APP - UDI Codes Arbeitsabläufe in JTL-WMS / JTL-Packtisch+ 0
welche Sync Benutzer Daten in Shop und WAWI bei neu-Hosting über JTL JTL-Wawi 1.11 0
Neu Lösung nötig für JTL 1.11+ !!! Fragen rund um LS-POS 3
Neu Etsy-Bestellungen in JTL importieren (NO SCX) – ohne alles einzeln abzutippen Einrichtung und Installation von JTL-eazyAuction 6
Neu Austausch JTL-POS Tablet - Datenübertragung auf neues Gerät - Einrichtung Einrichtung / Updates von JTL-POS 0
Neu OPC friert beim speichern von Änderungen ein nach JTL-Shop Update von Version 5.1.5 auf 5.6.1 JTL-Shop - Fehler und Bugs 0
JTL-Ameise: Export von Verkäufen auf Komponenten-Ebene JTL-Wawi 1.10 6
Neu Erfahrungsbericht von JTL zu Myfactory Smalltalk 0
Neu von JTL-Wawi-Version 1.10.16.0 ist kein Update...möglich Installation von JTL-Wawi 2
Beantwortet Eigener Export JTL Ameise Rückstände JTL Ameise - Eigene Exporte 1

Ähnliche Themen