Dokumentation zur Erstellung eines JTL 1.0 Connectors

  • Temporäre Senkung der Mehrwertsteuer Hier findet ihr gesammelt alle Informationen, Videos und Fragen inkl. Antworten: https://forum.jtl-software.de/threads/mehrwertsteuer-senkung-vom-01-07-31-12-2020-offizieller-diskussionthread-video.129542/

Jan Krause - Billbee

Aktives Mitglied
22. Januar 2014
8
0
Detmold
Hallo,

ich bin auf der Suche nach Informationen zum Thema Implementierung eines JTL Connectors für JTL WAWI 1.0 auf dieses Forum hingewiesen worden.

Also: Wo finde ich Informationen über die Kommunikation zwischen JTL und Shop, um einen eigenen Connector zu schreiben?

Viele Grüße, Jan Krause
 

cspoo

Aktives Mitglied
15. April 2013
145
0
AW: Dokumentation zur Erstellung eines JTL 1.0 Connectors

Hallo Jan,


wir haben ein öffentliches Git-Repository mit einer Beispielimplementierung für einen Endpoint. Du findest es hier: https://gitlab.jtl-software.de/jtlconnector/example-connector
Der Beispiel-Endpoint arbeitet auf einer kleinen SQLite-Datenbank, in der die empfangenen Daten gespeichert werden. Um das Kommunikationsprotokoll auf der untersten Schicht brauchst du dich nicht zu kümmern, das ist soweit gekapselt. Du solltest jedoch vertraut mit objektorientiertem PHP sein, sowie bereits mit Composer gearbeitet haben. Ansonsten wäre der Einstieg ziemlich schwierig.

Den Code kannst du gerne forken und als Ausgangsbasis für eigene Entwicklungen verwenden. Er steht genauso wie unsere offiziellen Endpoints unter der LGPL. Bitte bedenke, dass du in jedem Falle eine Connectorlizenz im Kundencenter benötigst, um deinen Code mit JTL-Wawi testen zu können. Hierzu wendest du dich am besten nochmals an uns, sobald du bereit für erste Tests bist.
 

Jan Krause - Billbee

Aktives Mitglied
22. Januar 2014
8
0
Detmold
AW: Dokumentation zur Erstellung eines JTL 1.0 Connectors

Vielen Dank für die schnellen Antworten.
Ich entwickel nicht mit PHP sondern auf dem Microsoft Stack, werde mir die Beispielimplementierung aber anschauen.
Gibt es keine Infos auf Netzwerkebene? Also, wann JTL welche URL mit welchen Parametern aufruft und welche Daten in welchen Formaten erwartet werden?
Ich fürchte, um das Kommunikationsprotokoll komme ich nicht herum.

Viele Grüße, Jan
 

cspoo

Aktives Mitglied
15. April 2013
145
0
AW: Dokumentation zur Erstellung eines JTL 1.0 Connectors

Alle Requests laufen auf die Connector-URL als POST-Request. Requestformat ist JSON, wir setzen es in einer Abwandung von JSON-RPC ein. Das wird auch schnell klar, wenn du die URL zu einem Connector einmal direkt aufrufst, denn auch die Exceptions werden als JSON-RPC-Messages übertragen. Das Ganze sieht in etwa so aus:

Code:
{
  "method": "...",
  "params": { ... },
  "jtlrpc": "2.0",
  "id": "..."
}
Vor dem ersten Request muss eine Authentifizierung mittels Auth-Token (den der Benutzer als Passwort in JTL-Wawi eingibt) erfolgen - ebenfalls per JSON-RPC. Diese liefert eine Session-ID zurück, die an die Client-IP-Adresse gebunden ist und die bei allen künftigen Requests als "id"-Parameter mitgeliefert werden muss. Läuft die Session ab - z.B. wegen eines Timeouts, wird eine SessionException geworfen, sodass der Client die Gelegenheit hat, erst eine neue Session anzufordern, bevor er den Request wiederholt.

Wir verwenden ein Protokoll, das RPC-Methoden der Form "<object>.<method>" kennt. Die häufigsten Methoden sind dabei "push"/"pull"/"delete" zur Übertragung bzw. zum Löschen von Daten, jeweils aus Sicht des Clients gesehen. Zusätzlich gibt es an den meisten Objekten eine Methode "statistic", die eine Information zurückliefert, wie viele Objekte zum Pull zur Verfügung stehen. Das gesamte Mapping zwischen den Primary-Keys des Servers und denen des Clients findet serverseitig statt - ebenso wie das Vorhalten der Infos, welche Objekte bereits gepulled worden sind und welche nicht.

Wenn du auf Basis des .NET-Frameworks arbeitest, könnte ich dir evtl. die C#-Schnittstellendefinitionen zukommen lassen, aus denen unsere PHP-Model-Klassen generiert werden. Wir verwenden die json.net-Bibliothek, um die Daten zwischen managed objects und JSON hin- und herzukonvertieren. Dann siehst du schon einmal, wie die Datenstrukturen aussehen, auf denen du arbeiten musst.
 

Jan Krause - Billbee

Aktives Mitglied
22. Januar 2014
8
0
Detmold
AW: Dokumentation zur Erstellung eines JTL 1.0 Connectors

Hallo,

das klingt doch schon mal interessant.
Die C#-Schnittstellendefinition würde mich sehr interessieren!

Viele Grüße, Jan
 

Jan Krause - Billbee

Aktives Mitglied
22. Januar 2014
8
0
Detmold
AW: Dokumentation zur Erstellung eines JTL 1.0 Connectors

Hallo Christian,

sind die Klassen vollständig? Den Bereich Aufträge / Orders konnte ich nicht entdecken, oder wie heißt das bei JTL?
Hast du evtl. noch Infos dazu, wie z.B. der Abruf von Bestellungen über den Connector aussieht? Also in welcher Reihenfolge welche Methode aufgerufen wird?

Sonst installier ich mir einen Shopware Testshop und schaue mir die Kommunikation da mal an.
 

Andrewbudy

Aktives Mitglied
17. Januar 2017
2
0
Hallo,
Ich arbeite auch an .Net JTL 1.0 Connector.
Können Sie mir bitte auch C # Schnittstellen und Klassen anbieten?
 

Andrewbudy

Aktives Mitglied
17. Januar 2017
2
0
Ich verstehe, aber C # -Modelle und Schnittstellen wurden an Jan Krause - Billbee gesendet. Ich bitte Sie, mir die gleichen Informationen zu schicken.
 

testjo

Sehr aktives Mitglied
Die Daten waren lediglich ein Experiment und sind seit 1 1/2 Jahren (siehe Thread-Verlauf) nicht mehr vorhanden oder aktuell.
Die aktuell kompatible Schnittstellen-Definition für Entwickler ist hier zu finden: http://docs.jtl-connector.de/en/latest/
Frage warum hier EN-en ?
http://readthedocs.org/projects/jtl-connector/downloads/
SORRY /
\ /
\ This page does /
] not exist yet

Die link steht auf dieser Seite beim linker MEnu downloads
http://docs.jtl-connector.de/en/latest/
 
Ähnliche Themen Forum Antworten Erstelldatum des Themas
Neu Dokumentation von Einkaufskontrakten User helfen Usern - Fragen zu JTL-Wawi 1
Neu Verbindung zur Datenbank nicht möglich - Server neu starten ist die Lösung User helfen Usern - Fragen zu JTL-Wawi 2
Neu Aktueller Stand und Hintergründe zur Anbindung von Technischen Sicherheitseinrichtungen (TSE) in JTL-POS Einrichtung / Updates von JTL-POS 8
Neu zur Bestellung Material liefern User helfen Usern - Fragen zu JTL-Wawi 0
Neu Mehrere Fragen zur Packliste User helfen Usern - Fragen zu JTL-Wawi 2
Offen Frage zur Option Sonderpreis WooCommerce-Connector 1
Neu Es steht leider keine Versandart zur Verfügung. Einrichtung von JTL-Shop 7
Neu "Domain zur Liste sicherer Absender hinzufügen" ohne Funktion Servicedesk (Beta) 0
Neu Auswirkung einer Preis und Bestandsänderung im Shop zur WaWi WooCommerce-Connector 2
Neu Keine Verbindung zur Datenbank Installation von JTL-Wawi 9
Neu Übertragungsfehler in Auktionen Ebay/EazyAuction per SQL in Batch zur erneuten Übertragung anstoßen User helfen Usern - Fragen zu JTL-Wawi 0
Neu Anfängerfrage zur benötigten Hardware User helfen Usern - Fragen zu JTL-Wawi 8
Gelöst JTL hängt sich bei der Erstellung von VarKombis auf Gelöste Themen in diesem Bereich 8
Gelöst JTL Packtisch und Erstellung Rechnungskorrektur User helfen Usern - Fragen zu JTL-Wawi 3
Neu Schnellere Erstellung von Vätern und ihren Kindartikeln User helfen Usern - Fragen zu JTL-Wawi 1
Neu Google Shopping Exportformat (Plugin) - keine Datenfeed erstellung Plugins für JTL-Shop 5
Neu Erstinbetriebnahme JTL WaWi mit AWS RDS DB - Fehler beim Erstellung der Datenbank ( Erstelle Mandantenschema ) Installation von JTL-Wawi 1