Neu E-Mail Versand in JTL - Absender ändern

Hanfhandel

Mitglied
15. November 2022
20
6
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: 7
Zuletzt bearbeitet:
Ähnliche Themen
Titel Forum Antworten Datum
Neu E-Mail-Adresse beim Versand von Lieferantenbestellungen User helfen Usern - Fragen zu JTL-Wawi 0
Neu Mail-Versand & Plugin Doku Technische Fragen zu Plugins und Templates 2
Nur noch sporadischer Versand per Mail von Rechnungen, Lieferscheinen und Mahnungen nach Update auf Version 1.8. JTL-Wawi 1.8 0
Neu Passwort vergessen Mail wird nicht gesendet in 5.3.1 JTL-Shop - Fehler und Bugs 1
Neu Workflow - Stücklisten im Auftrag abfragen und korrekt in einer Mail auflisten User helfen Usern - Fragen zu JTL-Wawi 1
Workflow = Gewinn unter 30 % vom netto = per Mail informiert JTL-Wawi 1.6 10
Neu Firmen- und E-Mail Einstellungen - Text hevorheben (fett) und Anordnung in Vorlage anpassen Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 21
Neu Servicedesk - Domain-Hoster gewechselt, E-Mail erfolgreich getestet, aber keine E-Mails landen im Service Desk! Gelöste Themen in diesem Bereich 7
Neu Workflow Aktion E-Mail senden kann nicht Plain und HTML Email zusammen versenden Arbeitsabläufe in JTL-Wawi 6
Neu Lieferantenbestellung als CSV mit selbst festgelegten Spalten per Mail senden Arbeitsabläufe in JTL-Wawi 1
In Email-Vorlage: E-Mail Adresse im eigenen Feld verwenden JTL-Wawi 1.8 4
Beantwortet #GEFUNDEN# Suche jemand , der uns eine (automatische) SQL Abfrage erstellen kann mit Mail Ausgabe Dienstleistung, Jobs und Ähnliches 2
Gelöst Per Workflow im Servicedesk eine Mail versenden. Gelöste Themen in diesem Bereich 4
Wie kann ich eine Benachrichtigung bei einem Wareneingang auslösen mit einer Mail über die Artikel die eingebucht wurden JTL-Wawi 1.8 2
Beantwortet WF Mail wenn Amazon Artikel nicht verknüpft ist JTL-Workflows - Ideen, Lob und Kritik 1
Neu E-Mail mit Strato - Fehler normal? Betrieb / Pflege von JTL-Shop 6
Neu E-Mail Vorlagen erweitern: Neue Vorlage à la Header, bzw. Sprachvariable nutzen? Templates für JTL-Shop 3
Ausgabe per E-Mail geht plötzlich nicht mehr, Testmail aus Wawi aber schon JTL-Wawi 1.6 22
Neu E-Mail Versandbenachrichtigung aus JTL Wawi 1.8.10.0 wird doppelt versendet User helfen Usern 6
Neu Zulauf in einer Übersicht unter Versand/Lieferscheine? Eigene Übersichten in der JTL-Wawi 1
Neu Email-Versand Tagesabschluss nicht mehr möglich - "exception reading response" JTL-POS - Fehler und Bugs 2
"gekauft am"-Spalte im Bereich Versand nach update verschwunden JTL-Wawi 1.8 2
Neu Variablen für den Email Versand Einrichtung JTL-Shop5 0
Neu Email Versand in JTL Wawi einstellen User helfen Usern - Fragen zu JTL-Wawi 3
Neu Versand Angebote: Nachkommastellen Gesamtbetrag brutto JTL-Wawi - Fehler und Bugs 0
Neu DPD-Versand in Nicht-EU-Länder mit JTL-Shipping JTL-ShippingLabels - Ideen, Lob und Kritik 1
Neu Schweiz: Die Gewichtsangabe ist kleiner als im CN23-Formular > kein Versand möglich JTL-ShippingLabels - Fehler und Bugs 13
Neu Nach Update von 1.5 auf 1.8 Versand in die Schweiz nicht mehr möglich JTL-ShippingLabels - Fehler und Bugs 2
Neu ebay Versanddatum / Versandfrist "Versand bis..." in die Wawi holen, um Aufträge zu priorisieren eBay-Anbindung - Ideen, Lob und Kritik 0
Auftragspositionen - Erfolgter Versand Artikel - Teilieferung Welche Tabelle JTL-Wawi 1.7 2
Versand Großbritannien JTL-Wawi 1.7 1
JTL-WaWi eBay Angebotsvorlage Versand/Zahlung fehlerhaft JTL-Wawi 1.8 0
V1.8.11: "Versand" / "Lieferscheine versendet" - Wo ist das Suchfeld für Sendungsnummer geblieben? JTL-Wawi 1.8 2
Versand: Paketmenge pro Mitarbeiter am Tag - pro Monat - pro Jahr JTL-Wawi 1.8 0
Neu DHL Internationaler Versand JTL-ShippingLabels - Fehler und Bugs 8
Neu Amazon Versand kostenlos oder extra ausgewiesen Smalltalk 4
Neu Artikelmengen zusammengefasst von Versand-Aufträge-Lieferbar JTL Ameise - Eigene Exporte 0
Auftrag ohne Versand abschließen -> wieder rückgängig geht nicht JTL-Wawi 1.8 1
Neu Email Versand über OAuth JTL-Wawi - Ideen, Lob und Kritik 6
Neu Fehler JTL\\Catalog\\Category\\MenuItem::getImageWidth(): Return value must be of type int, null returned JTL-Shop - Fehler und Bugs 0
Fehlermeldung bei JTL-Connector/JTL-Wawi WooCommerce-Connector 1
Neu JTL-Shop oder Workflow: Artikel mit Menge > 1 sollen trotzdem als separate Einzelartikel im Auftrag aufgeführt werden User helfen Usern - Fragen zu JTL-Wawi 0
Neu JTL Shop 5 als Docker File? Installation / Updates von JTL-Shop 1
JTL WaWi Download nicht möglich JTL-Wawi 1.8 3
Neu JTL-Connector Token Shopware-Connector 1
Neu JTL SHOP 4 Vorlagenproblem Einrichtung von JTL-Shop4 0
Neu JTL Paypal Checkout Button bei Konfigurationsartikel verhindern Plugins für JTL-Shop 3
Neu JTL SHOP update von 5.2.4 auf 5.3.1 - DBupdater startet nicht das Datenbankupdate Installation / Updates von JTL-Shop 6
Neu 👉 JTL-Wawi 1.9 Open Beta Release - Aktuell 1.9.4.0 Releaseforum 1
Neu JTL PayPal: Plugin - Bestellungen werden nicht angezeigt. Fehlermeldung "Unable to load config 'file:.conf'" Plugins für JTL-Shop 2

Ähnliche Themen