# Kann ich einen Client/Server verbindung hinkriegen die mir alle paar Sekunden die aktuellen Daten per Realtime zuschickt ?



## Xalo (9. Sep 2020)

Hey ich muss eine Aufgabe lösen, und zwar muss ich eine Client/Server Verbindung herstellen, die mir die Daten in Realtime zuschickt . 
Das Ziel ist folgendermasen definiert: 

Eine Echtzeit Kommunikation zwischen Remotedesktop-Client (ERP-Anwendung: Sage) und der Arbeitsstation (CRM-Anwendung: Web/Intrexx). Der Remotedesktop-Client soll mit einer Server-Anwendung ausgestattet werden die Befehle aus der ERP-Anwendung an die Arbeitsstation (Client) weiterreicht. Im Kern soll der ERP-Anwender Informationen aus dem Arbeitskontext direkt nutzen können um auf der Arbeitsstation weiter arbeiten zu können. Das erleichtert den Usern die Arbeit, sorgt für eine höhere Usability beim Nutzer da er die Adresse nicht nochmal suchen müsste. Folglich wird der Arbeitsaufwand gemindert.

Jetzt ist die Frage ist sowas möglich ? 

Ich bedanke mich schon mal im voraus
Mit freundlichen Grüßen 
Xalo


----------



## kneitzel (9. Sep 2020)

Die Anforderungen sind für mich so nicht verständlich. Generell ist es natürlich möglich, Informationen vom Server direkt an den Client zu schicken. Und wenn "Echtzeit Kommunikation" nur als Sinnbild für "live" zu verstehen ist und keine konkreten Anforderungen hat, dann ist das auch ein einfaches, triviales Protokoll auf IP Basis (ggf. sogar TCP/IP, aber UDP mit Erweiterungen wie RTP oder so machen ggf. Sinn um den Overhead von TCP zu vermeiden ....). Das würde aber auch bedeuten: Nicht alle paar Sekunden etwas schicken sondern direkt, wenn etwas anfällt....

Ansonsten sind die Schnittstellen wichtig. Was für Möglichkeiten gibt es auf beiden Seiten um einzugreifen? Aber dazu muss man die Anwendungen im Detail betrachten und dazu kann ich nichts sagen.

Edit: RCP war falsch  RTP ist natürlich das Real Time Protocoll (RFC 1889, 3550, 3551, ...)


----------



## Xalo (9. Sep 2020)

Um es genau zu sagen ist meine Aufgabe das ich wie oben schon gesagt einen Realtime (Live ) Verbindung zwischen Client und Server herzustellen damit ich meine Kundesoftware unterstützen kann, ich muss z. B. wenn ich was in einer Kundendatei einfüge das ich mit einem Befehl oder einem Button drücke kriege ich alles Infos ohne andere Tabs zu öffnen. Ich hoffe das war so verständlich


----------



## Thallius (9. Sep 2020)

Sorry nein


----------



## Xalo (9. Sep 2020)

Was meinst du mit Sorry Nein? Das es nicht geht oder das du nicht verstanden hast was ich geschrieben habe ?


----------



## Thallius (9. Sep 2020)

Ich habe keine Ahnung worauf das hinaus laufen soll. Wenn du Kundendaten ändern willst ist der normale Vorgang sich die Daten vom Server zu holen, sie zu ändern und wieder zum Server zu schicken. Das Ganze muss dann noch abgesichert werden dass während dessen kein anderer den gleichen Kunden ändert, was in der Praxis beliebig kompliziert werden kann. Was genau du da jetzt mit Live meinst ka.


----------



## kneitzel (9. Sep 2020)

Es ist nicht verständlich, was Du genau möchtest. Und was überhaupt geht, hängt schlicht von den Schnittstellen ab, die die Software unterstützt.

Wenn es ein Web-Client ist, dann hast Du ggf. gute Chancen, denn der Client wird sich ja Daten vom Server holen und das könnte man zur Not nachbilden. Aber das ist eine Frickelei und mit jedem Update kann es zu Problemen kommen. Eine offizielle API wäre deutlich besser.

Aber damit es "live" geht, musst Du ja wissen, wann welche Daten neu angefallen sind. Evtl. bietet der Client dafür Hooks oder so. Falls der Server eine Datenbank nutzt, dann kann man da evtl. auch ansetzen, wobei das auch nicht unproblematischsein kann...

Aber ist diese Anforderung wirklich so real vorhanden? Wenn es um Nutzer-Interaktion geht, dann spielt eine Verzögerung von wenigen Sekunden keine Rolle. Somit könnte der Client regelmäßig nach Updates fragen. Aber dazu muss man die Anforderungen sauber erfassen.

Derzeit sehe ich:
- keine sauberen Anforderungen
- keine Analyse der technischen Möglichkeiten der Produkte.
- keinen Ansatz, wie wir hier helfen könnten. Wir können weder die Anforderungen für die formulieren noch ist dies hier ein Sage Forum - wir kennen die von Dir genutzte Software nicht einmal (so da nicht durch Zufall jemand auch die Software nutzt....)

Bezüglich technischer Möglichkeiten wäre dann mein Ratschlag: Wende Dich an den Support der Firma. Die können zu Ihrem Produkt näheres sagen... so hat man die größte Chance, eine stabile Lösung zu bauen.


----------



## Xalo (9. Sep 2020)

Alles klar danke euch für eure Antworten, ich schau mal ob ich das nachher mal etwas besser formulieren kann. Dann würde ich das hier einfach nochmal schreiben, an sich ist das nichts so schweres gewesen nur kann ich das nicht so gut formulieren.


----------



## kneitzel (9. Sep 2020)

Kein Problem, wir schauen gerne, ob wir helfen können. Nur eben können wir ggf. zu konkreten Interfaces / APIs von sehr konkreten Produkten (SAGE ERP Software) nur sehr begrenzt etwas sagen. Aber wenn wir helfen können, dann tun wir das natürlich gerne.


----------



## Xalo (9. Sep 2020)

Ich hoffe das versteht man nun etwas besser was ich genau will. 

Auf dem Remotedesktop-Client soll ein Service als Server laufen der auf Befehle von der ERP-Anwendung horcht und diese an einen Service als Client auf der Arbeitsstation weitergibt. Wenn man sich verbindet, kriegt man in Echtzeit die ganze Zeit die aktuellen Daten zugeschickt. Zum Beispiel soll er die Adresse-ID aus der ERP-Adressverwaltung nutzen können, um auf der Arbeitsstation die Adresse in der CRM-Anwendung gleich zu öffnen. Um es konkret zu sagen, kann der ERP-Anwender im Sage arbeiten und bspw. falls er irgendwelche Kundedetails braucht kann er die sich dann direkt aus dem Intrexx ziehen ohne noch ein weiteres Tab zu öffnen und den Sage zu verlassen. Das ganze Funktioniert mit der Basis eines Server Push, d. h. das nicht nur der Client mit dem Server kommunizieren kann, sondern auch der Server mit dem Client somit muss der Client nicht die ganze Zeit beim Server nachfragen wegen den Details, sondern der Server schickt sie dem Client zu wenn er merkt das er die Date braucht (das macht man in dem man Gewisse Befehle eingibt).


----------

