#pragma once #include "../Include/KSGNetwork.h" #include namespace KSGClient { // Wird verwendet um News Oberflächen abzufragen (KSG Script Seiten) class NewsClient : public NewsServerClient { private: Framework::Text ip; unsigned short port; int cId; Network::Klient* k; char* key; unsigned char keyLen; Framework::Critical cs; Framework::Text err; public: // Konstruktor NewsClient(int klientId, unsigned short port, const char* ip, const char* key, unsigned char keyLen); // Destruktor ~NewsClient(); // verbindet ich mit dem News Server // Gibt 1 zurück, falls der Vorgang erfolgreich ist, 0 sonnst bool verbinde() override; // Lädt eine KSG-Script Seite herunter uns speichert sie unter data/tmp/news/{name} // name: Der Name der Seite // Gibt 1 zurück, falls der Vorgang erfolgreich ist, 0 sonnst bool ladeSeite(const char* name) override; // 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 bool keepAlive() override; // 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 bool trenne(bool abmelden) override; // Gibt 1 zurück, falls der Client verbunden ist, 0 sonst bool istVerbunden() const override; // gibt den Letzten Fehlertext zuück // sollte erst aufgerufen werden, nachdem eine andere aufgerufene Methode fehlgeschlagen ist const char* getLetzterFehler() const override; }; };