Dokumentation zur Erstellung eines JTL 1.0 Connectors

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
Titel Forum Antworten Datum
Neu Dokumentation der JTL Versionen in der lokalen DB Installation von JTL-Wawi 0
WAWI 1.8.12.0 stürzt ab, wenn die Verbindung zur Datenbank unterbrochen wurde JTL-Wawi 1.8 18
Neu Produktdaten aus Shop zur Wawi WooCommerce-Connector 9
Neu JTL-Installation- Verbindung zur Datenbank -SA Kennwort Installation von JTL-Wawi 22
Neu JTL-Kenner Raum Aachen zur Mithilfe gesucht Dienstleistung, Jobs und Ähnliches 2
Neu Programmierung eines Tools zur Verwaltung einer Datentabelle (JTL Shop 5) Technische Fragen zu Plugins und Templates 6
Neu Checkout (zur Kasse) in englischer Sprache führt ins Nichts. Link mit Sprache falsch JTL-Shop - Fehler und Bugs 5
Gelöst DPD: Webservice steht aktuell nicht zur Verfügung JTL-ShippingLabels - Fehler und Bugs 2
Preisliste Druck = ungültige Zugangsdaten zur Datenbank JTL-Wawi 1.8 1
keine Verbindung zur Datenbank JTL-Wawi 1.8 3
Neu Kostenloses Webinar: BWA – Leg ich ab? Richtiges lesen einer BWA zur Unternehmenssteuerung im Onlinehandel Smalltalk 0
Neu Dynamischen Parameter an BAT anfügen zur Ausgabe als Messagebox User helfen Usern - Fragen zu JTL-Wawi 1
Neu Rechnungskauf Ratepay - Zahlungsart steht nicht zur Verfügung Plugins für JTL-Shop 1
Frage zur Ansicht JTL-Wawi 1.7 1
Neu Wir verschicken eine EMail zur Bestätigung für Produktinformation ? Allgemeine Fragen zu JTL-Shop 2
Neu Wawi läuft, aber ein Rechner hat den Pfad zur Datenbank verloren, Mandant kann nicht ausgewählt werden User helfen Usern - Fragen zu JTL-Wawi 3
Neu Dienstleister für Erstellung eigener Produktseiten Amazon-Anbindung - Ideen, Lob und Kritik 4
Erstellung von Variationen JTL-Wawi 1.8 2

Ähnliche Themen