sgcWebSockets 4.4.4

· Releases

Dit zijn de functies in sgcWebSockets 4.4.4

[+] : Nieuw component TsgcHTTPGoogleCloud_Calendar_Client, maakt het mogelijk om de Google Calendar API V3 te gebruiken: kalenders en events ophalen, synchroniseren met je eigen kalender...
[+] : Nieuwe GoogleCalendar-demo die de belangrijkste functies van de Google Calendar-client laat zien.
[+] : Nieuwe methode "PublishAndWait" in MQTT-client: maakt het mogelijk om een bericht te publiceren met mtqsAtLeastOnce of mtqsExactlyOnce en te wachten tot het bericht door de server is verwerkt.
[+] : Nieuwe methode "SendAndWait_DeviceToCloud" in Azure IoT MQTT-client: verstuurt een bericht van device naar cloud en wacht tot de server het verzoek heeft verwerkt.
[+] : Nieuwe eigenschap Authentication in TsgcHTTP2Client, maakt het mogelijk om HTTP/2-verzoeken te versturen met OAuth2-protocol als authenticatie.
[+] : Verbeterde HTTP/2-server: ping en heartbeat worden nu ondersteund.
[+] : Verbeterde Google PubSub-client, nieuwe events "OnAuthToken" en "OnAuthTokenError" om de OAuth2 event flow af te handelen.
[+] : Verbeterde Google PubSub-client, nieuwe methode "RefreshToken" om opnieuw te verbinden met een OAuth2-sessie.
[+] : Verbeterde Telegram-client, ondersteuning toegevoegd voor proxy's: HTTP, MTProto en Socks5. Nieuwe methoden om proxy's toe te voegen, te verwijderen, in te schakelen, uit te schakelen...
[+] : Nieuwe methode "Restart" in Server-componenten: herstart de server in een secundaire thread.
[+] : Verbeterde WatchDog op Server-componenten, een nieuwe eigenschap Monitor; indien ingeschakeld probeert een client te verbinden met de server; faalt dit na de ingestelde TimeOut, dan wordt de server automatisch herstart.

[*] : Bug opgelost in TsgcWebSocketClient en TLSOptions.IOHandler = iohSChannel: bij het sluiten van de verbinding werd een exception 10004 getoond.
[*] : Bug opgelost in TsgcWebSocketClient en TLSOptions.IOHandler = iohSChannel: bij het vernietigen van TsgcWebSocketClient terwijl de verbinding actief was, ontstond een thread-lock.
[*] : Bug opgelost in Azure IoT MQTT-client: OnMQTTPubAck werd niet aangeroepen wanneer de client een acknowledgement van de server ontving.
[*] : Bug opgelost: serververbindingen werden niet gesloten als OriginsAllowed niet overeenkwam met de websocket origin van de client.
[*] : Bug opgelost in ServerSentEvent javascript-code: bevatte ongeldige tekst.
[*] : Bug opgelost bij het compileren van de Custom Indy-versie: sgcIdStackVCLPosix gebruikte IdCTypes in plaats van sgcIdCTypes.
[*] : Bug opgelost in HeartBeat: als er een exception optrad bij het versturen van een ping werd deze niet opgevangen en aan de gebruiker getoond.
[*] : Bug opgelost in MQTT-client: als er een exception optrad bij het opnieuw versturen van een bericht met Qos <> mtqsAtLeastOnce, werd deze niet opgevangen en aan de gebruiker getoond.
[*] : Bug opgelost in MQTT-client: bij het publiceren van een Stream met Qos <> mtqsAtLeastOnce zonder acknowledgement van de server voor de timeout, was de payload leeg bij het opnieuw versturen van het bericht.
[*] : Geheugenlekken opgelost in Server-component wanneer HTTP/2 is ingeschakeld.
[*] : Bug opgelost in HTTP/2 wanneer de andere peer een InitialWindowSize settings update verstuurt.
[*] : Bug opgelost in HTTP/2-client: als er tijdens een Synchronous HTTP Request een disconnect optrad, stopte de client niet met wachten op een resultaat.
[*] : Bug opgelost in HTTP/2-server: als SETTINGS_INITIAL_WINDOW_SIZE werd gewijzigd na HEADERS, werd de WindowSize niet correct aangepast.
[*] : Bug opgelost in Binance Spot User Stream API: als er een fout optrad bij het verwijderen van de interne ListenKey na een disconnect, werd het veld niet gewist en kon er niet opnieuw verbonden worden.
[*] : Bug opgelost in WatchDog op Server-componenten: als de server handmatig werd gestopt, probeerde de WatchDog de server opnieuw te starten in plaats van te stoppen.
[*] : Bug opgelost bij het compileren van sgcJSON_XSuperObject en sgcJSON_System met Delphi 10.4
[*] : Bug opgelost in WebSocket Indy-servers: als Options.ReadTimeOut = 0 gebruikte de server volledige cpu. Nu is de minimumwaarde voor ReadTimeOut = 1
[*] : Bug opgelost in Websocket Indy-servers: als de server een close-pakket verstuurt dat niet wordt ontvangen/verwerkt door de andere peer, gebruikt de verbinding volledige cpu.

[/] : Asynchrone HTTP/2-methoden van TsgcHTTP2Client zijn nu hernoemd naar GetAsync, PostAsync, PutAsync...
[/] : Demo's zijn nu gegroepeerd per categorie.