LitDev 1.2.24.0 DE
http://litdev.uk/LitDev.De.html Extension API
LDClient
Server- und Klient Kommunikation zwischen Computern.
Für Server und Klient sind separate Programme erforderlich. Diese Klasse ist für den Klient (Intern: Client#). S.a. LDServer.
example client-server\*.sb
CheckServer | CloseDelay | Connect |
Disconnect | Disconnected | GetClients |
LastServerMessage | Name | SendMessage |
ServerMessage | UpdateDynamic | UpdateStatic |
CheckServer(server)
Testet ob ein Server für eine Verbindung zur Verfügung steht.
Diese Methode nicht mit hoher Frequenz (> 1x/sec) aufrufen.
server Die Server Verbindung als "IP:Port" (zB. "192.168.1.60:100").
Dieser Wert wird von von LDServer.Start zurückgegeben.
returns "AVAILABLE" oder "UNAVAILABLE".
CloseDelay
Ermittelt oder setzt eine Verzögerung [ms] (Standard: 100) bei Trennung, um das Senden einer Nachricht zu erlauben, bevor die Verbindung getrennt wird (Disconnect).
Diese Verzögerung sollte auch für den Server (LDServer.CloseDelay) gesetzt werden.
Connect(server,auto)
Verbindet zu einem Server.
server Die Server Verbindung als "IP:Port" (zB. "192.168.1.60:100").
Dieser Wert wird von 'LDServer.Start' zurückgegeben.
auto Automatiche Nachrichtenübergabe? "True" oder "False".
Bei (empfohlener) Verwendung werden alle Klientdaten via Server an alle anderen Klienten übergeben
und es ist keine weitere Verarbeitung von Senden- und Empfangen Ereignissen erforderlich.
Die Daten werden in Arrays (indexiert durch Klientname) aktualisiert, die von den 'Update..' Methoden zurückgegeben werden.
Die 'auto' Option sollte für Server und alle Klienten gleich sein.
returns "SUCCESS", "FAILED" oder "ALREADY_CONNECTED".
Disconnect()
Trennt den Klient vom Server ab.
returns "SUCCESS", "FAILED" oder "NOT_CONNECTED".
Disconnected
Ereignisaufruf wenn der Server diesen Klient abtrennt.
GetClients()
Ermittelt eine Liste aller aktuell verbundenen Klienten.
returns Ein Array mit aktuellen Klientnamen oder "" für 'keiner'.
LastServerMessage
Ermittelt die letzte Server Nachricht.
Name
Ermittelt oder setzt den eigenen Klientname.
SendMessage(message)
Sendet eine Nachricht an den Server.
message Die Nachricht. Kann eine beliebige Variable (auch Array) sein.
returns "SUCCESS", "FAILED" oder "NOT_CONNECTED".
ServerMessage
Ereignisaufruf wenn der Server eine Nachricht an diesen Klient sendet.
UpdateDynamic(data)
Aktualisiert Klientdaten bei Verwendung der 'auto' Nachrichtenübergabe (LDClient.Connect).
Verwendung für kleinere Anzahl von häufig wechselnden Daten (zB. Sprite Koordinaten).
Diese Methode verwendet klientseitg zuletzt aktualisierte Daten und ist dafür schnell.
data Die Daten dieses Klienten zur Übergabe an andere Klienten.
returns Ein Array (indexiert durch Klientname) mit aktuellen Daten für jeden existierenden Klient.
UpdateStatic(data)
Aktualisiert Klientdaten bei Verwendung der 'auto' Nachrichtenübergabe.
Verwendung für größere Anzahl von selten wechselnden Daten (zB. Klient Konfiguration).
Diese Methode verwendet serverseitig gespeicherte und abgerufene Daten.
Kann langsamer als UpdateDynamic sein, da auf serverseitig abgerufene Daten gewartet wird,
um sicherzustellen, daß alle Klientdaten voll synchronisiert werden.
data Die Daten dieses Klienten zur Übergabe an andere Klienten.
returns Ein Array (indexiert durch Klientname) mit aktuellen Daten für jeden existierenden Klient.