|
@@ -128,6 +128,25 @@ namespace KSGClient
|
|
virtual AccountActivityInfo *release() = 0;
|
|
virtual AccountActivityInfo *release() = 0;
|
|
};
|
|
};
|
|
|
|
|
|
|
|
+ struct ChatServerNachricht
|
|
|
|
+ {
|
|
|
|
+ protected:
|
|
|
|
+ int ref; // Reference Counter
|
|
|
|
+
|
|
|
|
+ public:
|
|
|
|
+ char type; // Typ der Nachricht
|
|
|
|
+ Framework::Text *message; // Text der Nachricht
|
|
|
|
+ int account; // Beteiligter Account
|
|
|
|
+ int gruppe; // Beteiligte Gruppe
|
|
|
|
+ int chatroom; // Beteiligter Chatraum
|
|
|
|
+ Framework::Array< int > *ids; // Liste mit Account Ids
|
|
|
|
+ // Erhöht den Reference Counter um 1 un gibt this zurück
|
|
|
|
+ virtual ChatServerNachricht *getThis() = 0;
|
|
|
|
+ // Verringert den Reference Counter um 1 und gibt 0 zurück.
|
|
|
|
+ // Falls der Reference Counter nach dem Aufruf auf 0 ist löscht sich das Objekt selbst
|
|
|
|
+ virtual ChatServerNachricht *release() = 0;
|
|
|
|
+ };
|
|
|
|
+
|
|
// Wird benutzt, um die Verbindung mit den Servern aufrecht zu erhalten. Bei einem Verbindungsabbruch wird der Client automatisch abgemeldet
|
|
// Wird benutzt, um die Verbindung mit den Servern aufrecht zu erhalten. Bei einem Verbindungsabbruch wird der Client automatisch abgemeldet
|
|
class ErhaltungServerClient
|
|
class ErhaltungServerClient
|
|
{
|
|
{
|
|
@@ -471,7 +490,7 @@ namespace KSGClient
|
|
// Erhält die Verbindung aufrecht
|
|
// Erhält die Verbindung aufrecht
|
|
// Gibt 1 zurück, falls der Vorgang erfolgreich ist, 0 sonnst
|
|
// Gibt 1 zurück, falls der Vorgang erfolgreich ist, 0 sonnst
|
|
// Sollte während einer bestehenden Verbindung etwa einmal alle 60 Sekunden aufgerufen werden, da sonst der Router die Verbindung automatisch trennt
|
|
// Sollte während einer bestehenden Verbindung etwa einmal alle 60 Sekunden aufgerufen werden, da sonst der Router die Verbindung automatisch trennt
|
|
- virtual bool keepAlive() = 0; // Erhält die Verbindung aufrecht
|
|
|
|
|
|
+ virtual bool keepAlive() = 0;
|
|
// Trennt die Verbindung zum Server
|
|
// Trennt die Verbindung zum Server
|
|
// Gibt 1 zurück, falls der Vorgang erfolgreich ist, 0 sonnst
|
|
// Gibt 1 zurück, falls der Vorgang erfolgreich ist, 0 sonnst
|
|
// Sollte erst nach einem erfolgreichen Aufruf von verbinde aufgerufen werden
|
|
// Sollte erst nach einem erfolgreichen Aufruf von verbinde aufgerufen werden
|
|
@@ -492,7 +511,92 @@ namespace KSGClient
|
|
// Kann nur von eingeloggten Clients verwendet werden
|
|
// Kann nur von eingeloggten Clients verwendet werden
|
|
class ChatServerClient
|
|
class ChatServerClient
|
|
{
|
|
{
|
|
-
|
|
|
|
|
|
+ public:
|
|
|
|
+ // verbindet sich mit dem zugewiesenen Chat Server
|
|
|
|
+ // Gibt 1 zurück, falls der Vorgang erfolgreich ist, 0 sonnst
|
|
|
|
+ virtual bool verbinde() = 0;
|
|
|
|
+ // sendet eine Chat Nachricht zu einem Account
|
|
|
|
+ // zuAccount: Id des Ziel Accounts
|
|
|
|
+ // nachricht: Die Nachricht
|
|
|
|
+ // Gibt 1 zurück, falls der Vorgang erfolgreich ist, 0 sonnst
|
|
|
|
+ virtual bool chatNachricht( int zuAccount, const char *nachricht ) = 0;
|
|
|
|
+ // ändert den angezeigten Account Namen
|
|
|
|
+ // name: der neue Name
|
|
|
|
+ // Gibt 1 zurück, falls der Vorgang erfolgreich ist, 0 sonnst
|
|
|
|
+ virtual bool accountNameÄndern( const char *name ) = 0;
|
|
|
|
+ // beendet die Freundschaft mit einem Account
|
|
|
|
+ // accountId: Die Id des Accounts
|
|
|
|
+ // Gibt 1 zurück, falls der Vorgang erfolgreich ist, 0 sonnst
|
|
|
|
+ virtual bool freundschaftBeenden( int accountId ) = 0;
|
|
|
|
+ // sendet eine Freundesanfragezu einem Account
|
|
|
|
+ // accountId: Die Id des Accounts
|
|
|
|
+ // Gibt 1 zurück, falls der Vorgang erfolgreich ist, 0 sonnst
|
|
|
|
+ virtual bool freundesAnfrage( int accountId ) = 0;
|
|
|
|
+ // beantwortet eine Freundesanfrage
|
|
|
|
+ // accountId: Die Id des Accounts
|
|
|
|
+ // ja: 1:=annehmen,0:=ablehnen
|
|
|
|
+ // Gibt 1 zurück, falls der Vorgang erfolgreich ist, 0 sonnst
|
|
|
|
+ virtual bool freundesAnfrageBeantworten( int accountId, bool ja ) = 0;
|
|
|
|
+ // erstellt ein chatroom
|
|
|
|
+ // name: Der Name des Chatrooms
|
|
|
|
+ // Gibt bei erfolg die Id des Chatrooms zurück, 0 sonst
|
|
|
|
+ virtual int chatroomErstellen( const char *name ) = 0;
|
|
|
|
+ // Sendet eine Einladung zum Chatroom
|
|
|
|
+ // accountId: Die Id des Accounts der eingeladen werden soll
|
|
|
|
+ // chatroomId: Die Id des Chatrooms
|
|
|
|
+ // Gibt 1 zurück, falls der Vorgang erfolgreich ist, 0 sonnst
|
|
|
|
+ virtual bool chatroomEinladung( int accountId, int chatroomId ) = 0;
|
|
|
|
+ // Einladung zum Chatroom wird abgelehnt
|
|
|
|
+ // accountId: Die Id des Accounts
|
|
|
|
+ // chatroomId: Die Id des Chatrooms
|
|
|
|
+ // Gibt 1 zurück, falls der Vorgang erfolgreich ist, 0 sonnst
|
|
|
|
+ virtual bool chatroomEinladungAblehnen( int accountId, int chatroomId ) = 0;
|
|
|
|
+ // betritt ein chatroom
|
|
|
|
+ // chatroomId: Die Id des Chatrooms
|
|
|
|
+ // Gibt 1 zurück, falls der Vorgang erfolgreich ist, 0 sonnst
|
|
|
|
+ virtual bool chatroomBetreten( int chatroomId ) = 0;
|
|
|
|
+ // chatroom Nachricht senden
|
|
|
|
+ // chatroomId: Die Id des Chatrooms
|
|
|
|
+ // nachricht: Die Nachricht die gesendet werden soll
|
|
|
|
+ // Gibt 1 zurück, falls der Vorgang erfolgreich ist, 0 sonnst
|
|
|
|
+ virtual bool chatroomNachricht( int chatroomId, const char *nachricht ) = 0;
|
|
|
|
+ // verlässt chatroom
|
|
|
|
+ // chatroomId: Die Id des Chatrooms
|
|
|
|
+ // Gibt 1 zurück, falls der Vorgang erfolgreich ist, 0 sonnst
|
|
|
|
+ virtual bool chatroomVerlassen( int chatroomId ) = 0;
|
|
|
|
+ // kickt Account aus Chatroom (nur wenn als admin des Chatrooms eingeloggt)
|
|
|
|
+ // chatroomId: Die Id des Chatrooms
|
|
|
|
+ // accountId: Die Id des Accounts
|
|
|
|
+ // Gibt 1 zurück, falls der Vorgang erfolgreich ist, 0 sonnst
|
|
|
|
+ virtual bool chatroomKick( int chatroomId, int accountId ) = 0;
|
|
|
|
+ // fragt nach allen freunden
|
|
|
|
+ // Die Liste der Freunde kann über getNextMessage empfangen werden
|
|
|
|
+ // Gibt 1 zurück, falls der Vorgang erfolgreich ist, 0 sonnst
|
|
|
|
+ virtual bool freundesListeAnfragen() = 0;
|
|
|
|
+ // fragt nach allen chatnachrichten, die gesendet wurden, während der Account in den der Client eingeloggt ist, offline war
|
|
|
|
+ // Die einzelnen Nachrichten können über getNextMessage empfangen werden
|
|
|
|
+ // Gibt 1 zurück, falls der Vorgang erfolgreich ist, 0 sonnst
|
|
|
|
+ virtual bool chatNachrichtAnfrage() = 0;
|
|
|
|
+ // Erhält die Verbindung aufrecht
|
|
|
|
+ // Gibt 1 zurück, falls der Vorgang erfolgreich ist, 0 sonnst
|
|
|
|
+ // Sollte während einer bestehenden Verbindung etwa einmal alle 60 Sekunden aufgerufen werden, da sonst der Router die Verbindung automatisch trennt
|
|
|
|
+ virtual bool keepAlive() = 0;
|
|
|
|
+ // Trennt die Verbindung zum Server
|
|
|
|
+ // Gibt 1 zurück, falls der Vorgang erfolgreich ist, 0 sonnst
|
|
|
|
+ // Sollte erst nach einem erfolgreichen Aufruf von verbinde aufgerufen werden
|
|
|
|
+ virtual bool trenne() = 0;
|
|
|
|
+ // Wartet auf eine Nachricht vom Chatserver und gibt diese zurück.
|
|
|
|
+ virtual ChatServerNachricht *getNextMessage() = 0;
|
|
|
|
+ // Gibt 1 zurück, falls der Client verbunden ist, 0 sonst
|
|
|
|
+ virtual bool istVerbunden() const = 0;
|
|
|
|
+ // gibt den Letzten Fehlertext zuück
|
|
|
|
+ // sollte erst aufgerufen werden, nachdem eine andere aufgerufene Methode fehlgeschlagen ist
|
|
|
|
+ virtual char *getLetzterFehler() const = 0;
|
|
|
|
+ // Erhöht den Reference Counter um 1 un gibt this zurück
|
|
|
|
+ virtual ChatServerClient *getThis() = 0;
|
|
|
|
+ // Verringert den Reference Counter um 1 und gibt 0 zurück.
|
|
|
|
+ // Falls der Reference Counter nach dem Aufruf auf 0 ist löscht sich das Objekt selbst
|
|
|
|
+ virtual ChatServerClient *release() = 0;
|
|
};
|
|
};
|
|
|
|
|
|
// Wird verwendet um Spiele oder Karten zu kaufen
|
|
// Wird verwendet um Spiele oder Karten zu kaufen
|