Jump to content

esegece

Members
  • Content Count

    70
  • Joined

  • Last visited

  • Days Won

    3

Everything posted by esegece

  1. Hello, I don't use ISAPI, but I've been running Indy servers 24/7 for several years now without any problems, so yes, Indy's fine for production. Just keep in mind that each connection runs in it's own thread, so if there are 80 concurrent connections, the server will be using 80 threads. Kind Regards, Sergio
  2. Hello, Yes, sgcWebSockets Enterprise edition comes with a custom indy package with support for openSSL 1.1 & 3.0, ALPN... The sgcIndy package, which is used for users that want to add support for the latest openSSL versions with the Indy components (ftp, smtp...) is currently included too with the sgcWebSockets Enterprise Source code package. The SSL implementations are equal for both, but in the sgcWebSockets package, the required indy files are renamed, so you can have the standard indy library installed in your IDE and the sgcWebSockets enterprise package without problems. Currently, the sgcIndy Package can be purchased separetely because some users are only interested in use the latest openSSL libraries for Indy. No, sgcWebSockets Enterprise has more features than sgcWebSockets Professional + sgcIndy, the enterprise edition has more components: HTTP.SYS server, http/2 support, DTLS over UDP... Anyway, you can upgrade from Professional to Enterprise edition at any time. More about feature matrix: https://www.esegece.com/websockets/features/feature-matrix-delphi-cbuilder Only keep in mind that if you purchase the sgcWebSockets professional edition and later you add sgcIndy, in order to use the latest openSSL libraries that comes with the sgcIndy package, you need the Professional Edition with source code, because the Professional BASIC edition compiles against the standard indy library. Kind Regards, Sergio
  3. Indy supports openSSL 1.1 using the following pull request https://github.com/IndySockets/Indy/pull/299, not sure if works on OSX I publish a commercial library based on Indy that supports openSSL 1.1 and openSSL 3.0 for all Delphi personalities (windows, OSX, linux, iOS...), you can use a TsgcHTTP1Client which inherits from TIdHTTP Indy client and connect using openSSL 1.1 or 3.0 Find below an example using openSSL 1.1 that is cross-platform uses sgcHTTP, sgcWebSocket_Types; function GetHTTP(const aURL: string): string; var oHTTP: TsgcHTTP1Client; vResponse: string; begin oHTTP := TsgcHTTP1Client.Create(nil); Try oHTTP.TLSOptions.OpenSSL_Options.APIVersion := oslAPI_1_1; oHTTP.TLSOptions.Version := tls1_3; oHTTP.Proxy.Enabled := True; oHTTP.Proxy.Host := '3.215.142.228'; oHTTP.Proxy.Port := 3128; oHTTP.Proxy.ProxyType := pxyHTTP; result := oHTTP.Get(aURL); Finally oHTTP.Free; End; end; This still requires the openSSL libraries but I provide already compiled openSSL libraries for registered customers for Windows, OSX, iOS and Android. More info: https://www.esegece.com/ https://www.esegece.com/help/sgcWebSockets/#t=Components%2FHTTP%2FHTTP1%2FHTTP1.htm https://www.esegece.com/help/sgcWebSockets/#t=QuickStart%2FOpenSSL%2FOpenSSL_OSX.htm The package that supports this is sgcWebSockets Enterprise that comes with a custom indy version that support openSSL 1.1 and 3.0 Kind Regards, Sergio
  4. esegece

    Recomnended Email and Webserver Components

    If you need to send gmail authentication using OAuth2 you can try this open source project which implements this type of authentication using the Indy components: https://github.com/geoffsmith82/GmailAuthSMTP/blob/master/README.md Additionally, I offer a commercial product called sgcWebSockets that includes support for Indy servers with support for HTTPs with the latest openSSL using a custom library with support for the latest TLS 1.3 (openSSL 1.1.1 and 3.0.0). OAuth2 authentication is also supported on server and client components, Indy IOCP Server for high performance servers... and much more features, you can check in the following link: https://www.esegece.com/websockets Kind Regards, Sergio
  5. esegece

    Where I can find the SSL DLLs for Indy?

    You can check the openSSL documentation which explains how to compile the openssl libraries: https://wiki.openssl.org/index.php/Compilation_and_Installation#OS_X
  6. esegece

    Where I can find the SSL DLLs for Indy?

    Hello, Indy openSSL works well with macOS, you only need the correct openSSL libraries (there is no need to update Indy OpenSSL Handler), as Remy suggests, you need openSSL 1.0.2 to work with TLS 1.2. You can download the openSSL 1.0.2 sources and compile for OSX. https://www.openssl.org/source/old/1.0.2/ Kind Regards, Sergio
  7. esegece

    ChatGPT Example

    @limelect because as in a previous post has been noted, these examples are using GPT-3 text transformer, not ChatGPT. ChatGPT has not API access yet. So you can receive different responses if you compare both. Kind Regards, Sergio
  8. esegece

    ChatGPT Example

    Hello, The API is very simple, you can use Indy to send the POST request and then parse the JSON response. Find below an example: function AskChatGPT(const aAPI, aQuestion: string): string; var oHTTP: TIdHTTP; oSSL: TIdSSLIOHandlerSocketOpenSSL; oStream: TStringStream; vPostData: string; oJSON: TJSONValue; oArray: TJSonArray; begin oHTTP := TIdHTTP.Create(nil); oSSL := TIdSSLIOHandlerSocketOpenSSL.Create(nil); Try oSSL.SSLOptions.Method := sslvTLSv1_2; oHTTP.IOHandler := oSSL; oHTTP.Request.CustomHeaders.Add('Authorization: Bearer ' + aAPI); oHTTP.Request.ContentType := 'application/json'; vPostData := Format('{"model": "text-davinci-003","prompt": "%s","max_tokens": 2048,"temperature": 0}', [aQuestion]); // send request oStream := TStringStream.Create(vPostData); Try result := oHTTP.Post('https://api.openai.com/v1/completions', oStream); // parse response oJSON := TJSonObject.ParseJSONValue(result).GetValue<TJSONValue> ('choices'); result := TJSonArray(oJSON).Items[0].GetValue<TJSONString>('text').Value; Finally oStream.Free; End; Finally oSSL.Free; oHTTP.Free; End; end; The function has 2 arguments, the API key (can be obtained from https://beta.openai.com/account/api-keys) and the message you want to sent to ChatGPT. The function just sends the API Key as a Bearer Token and POST the JSON message to the server. The server returns a JSON object that must be parsed to obtain the response text. I've attached the complete project with the required openSSL libraries. Kind Regards, Sergio chatgpt_esegece.zip
  9. Hello, If you just need to exchange messages between clients, any of the proposed solutions will work, a publish/subscribe pattern is enough for your needs and any of the solutions can implement this pattern. 1. MQTT is usually used on constrained nets where bandwidth is important, the most common usage is working as a sensor, example: sending temperature every x seconds. 2. You can use any TCP library and implement your own Server and Client, using queues to store the messages exchanged between clients. I recommend Indy which is free, included with any Delphi version, supports all personalities and works very well. 3. WebSocket protocol has the advantage that using the same server implementation, is supported on VCL and WebBrowsers clients. Also has other features like compression, sub-protocols... As an example, I've a presence demo that allows to know who is subscribed to a channel, and exchange messages between peers, this can be useful for applications like chat rooms, collaborators on a document, people viewing the same web page, competitors in a game... find below a link of the compiled sample if you want to test it and get a better idea of how works. https://www.esegece.com/download/protocols/ProtocolPresence.zip Kind Regards, Sergio
  10. sgcWebSockets is a complete package providing access to WebSocket, MQTT, STOMP, AMQP, HTTP/2, STUN, TURN... and more protocols and APIs.  What's new in latest versions - Added support for EPOLL on Linux Indy Servers (Websocket and HTTPs Servers). - Improved IOCP on Windows Indy Servers (WebSocket and HTTPs Servers). The IOHandler has been rewritten from scratch and performance has been optimized. - Improved Google OpenAPI Client, now supports Service Accounts for non-interactive applications like daemons or windows services. - Added support for DTLS over UDP (Server and Client components). Main Features: - WebSocket and HTTP/2 Support: sgcWebSockets includes client and server-side implementations of the WebSocket protocol (RFC 6455). HTTP/s is also full supported. Support for plain TCP is also included. - SSL/TLS for Security: Your messages are secure using our SSL/TLS implementation. Widest compatibility via support for modern TLS 1.3 and TLS 1.2 - Protocols and APIs: Several protocols are supported: MQTT (3.1.1 and 5.0), STOMP, AMQP, WEBRTC, SIGNALR CORE, WAMP... Built-in protocols support Transactions, Datasets, QoS, big file transfers and more. APIs supported for third-parties like Binance, Coinbase, Kraken, FTX... - Cross-platform: Share your code using our WebSockets library for your Delphi VCL, Firemonkey, Javascript and .NET projects. Includes Server, Clients and several protocols for building and connecting to WebSocket applications. - High Performance WebSocket Server based on Microsoft HTTP Framework and IOCP. - Indy Servers (WebSocket + HTTPs) for Windows (IOCP) and Linux (EPOLL). - WhatsApp and Telegram clients. - Authorization protocols like OAuth2 and JWT are supported on Server and Client Components. - STUN and TURN protocols are supported on Server and Client Components - OpenAPI Pascal Client Generator for OpenAPI 3.0 and Swagger 1.0-2.0. Trial Version: https://www.esegece.com/websockets/download/download-delphi-cbuilder Compiled Demos: https://download.esegece.com/sgcWebSockets_bin.zip More Info: https://www.esegece.com/websockets
  11. esegece

    ilink64 - Fatal: Error detected (WRI237)

    Hi, Thanks for your quick response, I will try that. Kind Regards, Sergio
  12. esegece

    ilink64 - Fatal: Error detected (WRI237)

    Hello, The same error has been notified by a customer trying to compile a package under CBuilder 11.1 win64. The package is installed using a setup that makes use of msbuild, I attach the log with the error below: Microsoft (R) Build Engine, versi¢n 4.8.3761.0 [Microsoft .NET Framework, versi¢n 4.0.30319.42000] Copyright (C) Microsoft Corporation. Todos los derechos reservados. Compilaci¢n iniciada a las 10/07/2022 19:44:09. Proyecto "C:\Users\administrator\Documents\esegece\sgcWebSockets\Packages\sgcWebSocketsC11.cbproj" en el nodo 1 (Build destinos). CleanLinkerStateFiles: Se eliminar el archivo "C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\Win64\sgcWebSocketsC11.pdi". CreateProjectDirectories: Creando directorio ".\Win64\Release\". _PasCompileAll: Compiling ..\Source\sgcIWWebSocket.pas;..\Source\sgcIWWebSocket_Client.pas;..\Source\sgcJSON.pas;..\Source\sgcWebSocket.pas;..\Source\sgcWebSocket_Classes.pas;..\Source\sgcWebSocket_Client.pas;..\Source\sgcWebSocket_Const.pas;..\Source\sgcWebSocket_CustomClient.pas;..\Source\sgcWebSocket_Extension_Base.pas;..\Source\sgcWebSocket_Extension_DeflateFrame.pas;..\Source\sgcWebSocket_Extension_PerMessage_Deflate.pas;..\Source\sgcWebSocket_Extensions.pas;..\Source\sgcWebSocket_Helpers.pas;..\Source\sgcWebSocket_HTTPResponse.pas;..\Source\sgcWebSocket_Protocol_Base_Client.pas;..\Source\sgcWebSocket_Protocol_Base_Message.pas;..\Source\sgcWebSocket_Protocol_Broker_Client.pas;..\Source\sgcWebSocket_Protocol_Broker_Message.pas;..\Source\sgcWebSocket_Protocols.pas;..\Source\sgcWebSocket_Resources.pas;..\Source\sgcWebSocket_Types.pas;..\Source\sgcWebSocket_LoadBalancer_Client.pas;..\Source\sgcWebSocket_LoadBalancer_Message.pas;..\Source\sgcWebSocket_Client_WinHTTP.pas;..\Source\sgcWebSocket_Classes_WinHTTP.pas;..\Source\sgcWebSocket_Protocol_WAMP2_Client.pas;..\Source\sgcWebSocket_WinAPI.pas;..\Source\sgcWebSocket_Classes_Indy.pas;..\Source\sgcWebSocket_Protocol_WAMP2_Message.pas;..\Source\sgcWebSocket_Protocol_MQTT_Client.pas;..\Source\sgcWebSocket_Protocol_MQTT_Message.pas;..\Source\sgcWebSocket_API_Bitfinex.pas;..\Source\sgcWebSocket_API_Blockchain.pas;..\Source\sgcWebSocket_API_Pusher.pas;..\Source\sgcWebSocket_API_SignalR.pas;..\Source\sgcWebSocket_APIs.pas;..\Source\sgcWebSocket_API_Bittrex.pas;..\Source\sgcWebSocket_API_SocketIO.pas;..\Source\sgcSTOMP.pas;..\Source\sgcWebSocket_API_Binance.pas;..\Source\sgcWebSocket_Protocol_STOMP_ActiveMQ_Client.pas;..\Source\sgcWebSocket_Protocol_STOMP_Broker_Client.pas;..\Source\sgcWebSocket_API_Bitstamp.pas;..\Source\sgcWebSocket_Protocol_STOMP_Client.pas;..\Source\sgcWebSocket_Protocol_STOMP_Message.pas;..\Source\sgcWebSocket_Protocol_STOMP_RabbitMQ_Client.pas;..\Source\sgcWebSocket_Classes_Sockets.pas;..\Source\sgcHTTP.pas;..\Source\sgcTCP_Classes_Indy.pas;..\Source\sgcHTTP_Const.pas;..\Source\sgcHTTP_OAuth_Client.pas;..\Source\sgcHTTP_OAuth2_Client.pas;..\Source\sgcHTTP_Classes.pas;..\Source\sgcHTTP_Helpers.pas;..\Source\sgcWebSocket_API_Huobi.pas;..\Source\sgcWebSocket_API_Cex.pas;..\Source\sgcWebSocket_API_Bitmex.pas;..\Source\sgcWebSocket_Classes_SyncObjs.pas;..\Source\sgcWebSocket_Classes_Queues.pas;..\Source\sgcWebSocket_API_SignalRCore.pas;..\Source\sgcWebSocket_API_Kraken.pas;..\Source\sgcBase_Classes.pas;..\Source\sgcBase_Const.pas;..\Source\sgcBase_Helpers.pas;..\Source\sgcIoT.pas;..\Source\sgcIoT_Classes.pas;..\Source\sgcHTTP_API_Coinbase.pas;..\Source\sgcIoT_Client.pas;..\Source\sgcIoT_MQTT_Client.pas;..\Source\sgcIoT_Amazon_MQTT_Client.pas;..\Source\sgcIoT_Azure_MQTT_Client.pas;..\Source\sgcWebSocket_API_Coinbase.pas;..\Source\sgcTCP_Classes.pas;..\Source\sgcBase_Sync.pas;..\Source\sgcTCP_Client.pas;..\Source\sgcWebSocket_API_FXCM.pas;..\Source\sgcHTTP_Client.pas;..\Source\sgcHTTP_Amazon_AWS.pas;..\Source\sgcHTTP_Amazon_SQS.pas;..\Source\sgcHTTP_Amazon_AWS_Signature.pas;..\Source\sgcWebSocket_API_Discord.pas;..\Source\sgcHTTP_API_Binance.pas;..\Source\sgcHTTP_API.pas;..\Source\sgcHTTP_Google_Cloud.pas;..\Source\sgcHTTP_Google_PubSub.pas;..\Source\sgcHTTP_API_Kraken.pas;..\Source\sgcLib_Telegram.pas;..\Source\sgcLib_Telegram_Client.pas;..\Source\sgcHTTP_Google_Calendar.pas;..\Source\sgcHTTP_JWT_Classes.pas;..\Source\sgcHTTP_JWT_Client.pas;..\Source\sgcHTTP_JWT_RSA.pas;..\Source\sgcHTTP_JWT_Helpers.pas;..\Source\sgcHTTP_JWT_Types.pas;..\Source\sgcUDP_Classes.pas;..\Source\sgcUDP_Classes_Indy.pas;..\Source\sgcUDP_Client.pas;..\Source\sgcP2P.pas;..\Source\sgcHTTP_OpenAPI_Client_Amazon.pas;..\Source\sgcSocket_Classes.pas;..\Source\sgcSocket_Classes_Indy.pas;..\Source\sgcHTTP_JWT_HMAC.pas;..\Source\sgcSocket_Const.pas;..\Source\sgcHTTP_MultipartFormData.pas;..\Source\sgcHTTP_JWT_ES.pas;..\Source\sgcP2P_STUN_Classes.pas;..\Source\sgcP2P_STUN_Client.pas;..\Source\sgcP2P_STUN_Helpers.pas;..\Source\sgcP2P_STUN_Types.pas;..\Source\sgcWebSocket_API_FTX.pas;..\Source\sgcHTTP_API_FTX.pas;..\Source\sgcLib_RCON_Client.pas;..\Source\sgcLibs.pas;..\Source\sgcWebSocket_API_ThreeCommas.pas;..\Source\sgcHTTP_API_ThreeCommas.pas;..\Source\sgcAMQP.pas;..\Source\sgcAMQP_Classes.pas;..\Source\sgcAMQP_Client.pas;..\Source\sgcAMQP_Const.pas;..\Source\sgcAMQP_Helpers.pas;..\Source\sgcHTTP_API_Bitmex.pas;..\Source\sgcHTTP_API_Kucoin.pas;..\Source\sgcWebSocket_API_Kucoin.pas;..\Source\sgcWebSocket_Protocol_AMQP_Client.pas;..\Source\sgcWebSocket_Protocol_AMQP_Message.pas;..\Source\sgcHTTP_OpenAPI_Client.pas;..\Source\sgcHTTP_OpenAPI_Client_Google.pas;..\Source\sgcHTTP_OpenAPI_Client_Microsoft.pas;..\Source\sgcHTTP_OAuth2_Client_Google.pas;..\Source\sgcHTTP_OAuth2_Client_Microsoft.pas;..\Source\sgcWebSocket_API_OKX.pas;..\Source\sgcHTTP_OpenAPI_Client8.pas;..\Source\sgcHTTP_OpenAPI_Client9.pas using temporary file pasall.tmp _PasCoreCompile: C:\Program Files (x86)\Embarcadero\Studio\22.0\bin\dcc64.exe -B -AGenerics.Collections=System.Generics.Collections;Generics.Defaults=System.Generics.Defaults;WinTypes=Winapi.Windows;WinProcs=Winapi.Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE -DNDEBUG -I..\Source;..\libD11\Win64;"c:\program files (x86)\embarcadero\studio\22.0\lib\Win64\release";C:\Users\administrator\Documents\Embarcadero\Studio\22.0\Imports;"C:\Program Files (x86)\Embarcadero\Studio\22.0\Imports";C:\Users\Public\Documents\Embarcadero\Studio\22.0\Dcp\Win64;"C:\Program Files (x86)\Embarcadero\Studio\22.0\include" -LEC:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\Win64 -NU..\libD11\Win64 -NSWinapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;System;Xml;Data;Datasnap;Web;Soap -O..\Source;..\libD11\Win64;"c:\program files (x86)\embarcadero\studio\22.0\lib\Win64\release";C:\Users\administrator\Documents\Embarcadero\Studio\22.0\Imports;"C:\Program Files (x86)\Embarcadero\Studio\22.0\Imports";C:\Users\Public\Documents\Embarcadero\Studio\22.0\Dcp\Win64;"C:\Program Files (x86)\Embarcadero\Studio\22.0\include" -R..\Source;..\libD11\Win64;"c:\program files (x86)\embarcadero\studio\22.0\lib\Win64\release";C:\Users\administrator\Documents\Embarcadero\Studio\22.0\Imports;"C:\Program Files (x86)\Embarcadero\Studio\22.0\Imports";C:\Users\Public\Documents\Embarcadero\Studio\22.0\Dcp\Win64;"C:\Program Files (x86)\Embarcadero\Studio\22.0\include" -U..\Source;..\libD11\Win64;"c:\program files (x86)\embarcadero\studio\22.0\lib\Win64\release";C:\Users\administrator\Documents\Embarcadero\Studio\22.0\Imports;"C:\Program Files (x86)\Embarcadero\Studio\22.0\Imports";C:\Users\Public\Documents\Embarcadero\Studio\22.0\Dcp\Win64;"C:\Program Files (x86)\Embarcadero\Studio\22.0\include" -JPHNE -NBC:\Users\Public\Documents\Embarcadero\Studio\22.0\DCP\Win64\Release -NH..\libD11\Win64 -NO..\libD11\Win64 --BCB -CG pasall.tmp Embarcadero Delphi for Win64 compiler version 35.0 Copyright (c) 1983,2022 Embarcadero Technologies, Inc. 220402 lines, 2.50 seconds, 75802 bytes code, 120 bytes data. _PasCompileAll: Deleting file "pasall.tmp". Deleting file "..\libD11\Win64\pasall.o". _CLANGCoreCompile: C:\Program Files (x86)\Embarcadero\Studio\22.0\bin\bcc64.exe -cc1 -D NDEBUG -D USEPACKAGES -output-dir .\Win64\Release -I C:\Users\administrator\Documents\esegece\sgcWebSockets\Packages -I ..\Source -I ..\libD11\Win64 -isystem C:\Users\administrator\Documents\esegece\sgcWebSockets\LibD11\Win64 -isystem C:\Users\administrator\Documents\esegece\sgcWebSockets\Source -isystem "C:\Program Files (x86)\Embarcadero\Studio\22.0\include" -isystem "C:\Program Files (x86)\Embarcadero\Studio\22.0\include\dinkumware64" -isystem "C:\Program Files (x86)\Embarcadero\Studio\22.0\include\windows\crtl" -isystem "C:\Program Files (x86)\Embarcadero\Studio\22.0\include\windows\sdk" -isystem "C:\Program Files (x86)\Embarcadero\Studio\22.0\include\windows\rtl" -isystem "C:\Program Files (x86)\Embarcadero\Studio\22.0\include\windows\vcl" -isystem "C:\Program Files (x86)\Embarcadero\Studio\22.0\include\windows\fmx" -isystem C:\Users\Public\Documents\Embarcadero\Studio\22.0\hpp\Win64 -isystem C:\Users\Public\Documents\Embarcadero\Studio\22.0\hpp\Win64 -dwarf-version=4 -fcxx-exceptions -fborland-extensions -fdiagnostics-format borland -nobuiltininc -nostdsysteminc -triple x86_64-pc-win32-elf -emit-pch -fexceptions -fseh -munwind-tables -fno-common -fno-spell-checking -fno-use-cxa-atexit -x c++ -std=c++17 -O2 -fmath-errno -tR -tP -tM -o .\Win64\Release\sgcWebSocketsC11PCH1.pch sgcWebSocketsC11PCH1.h _CLANGCoreCompile: C:\Program Files (x86)\Embarcadero\Studio\22.0\bin\bcc64.exe -cc1 -D NDEBUG -D USEPACKAGES -output-dir .\Win64\Release -I C:\Users\administrator\Documents\esegece\sgcWebSockets\Packages -I ..\Source -I ..\libD11\Win64 -isystem C:\Users\administrator\Documents\esegece\sgcWebSockets\LibD11\Win64 -isystem C:\Users\administrator\Documents\esegece\sgcWebSockets\Source -isystem "C:\Program Files (x86)\Embarcadero\Studio\22.0\include" -isystem "C:\Program Files (x86)\Embarcadero\Studio\22.0\include\dinkumware64" -isystem "C:\Program Files (x86)\Embarcadero\Studio\22.0\include\windows\crtl" -isystem "C:\Program Files (x86)\Embarcadero\Studio\22.0\include\windows\sdk" -isystem "C:\Program Files (x86)\Embarcadero\Studio\22.0\include\windows\rtl" -isystem "C:\Program Files (x86)\Embarcadero\Studio\22.0\include\windows\vcl" -isystem "C:\Program Files (x86)\Embarcadero\Studio\22.0\include\windows\fmx" -isystem C:\Users\Public\Documents\Embarcadero\Studio\22.0\hpp\Win64 -isystem C:\Users\Public\Documents\Embarcadero\Studio\22.0\hpp\Win64 -dwarf-version=4 -fcxx-exceptions -fborland-extensions -fdiagnostics-format borland -nobuiltininc -nostdsysteminc -triple x86_64-pc-win32-elf -emit-obj -fexceptions -fseh -munwind-tables -fno-common -fno-spell-checking -fno-use-cxa-atexit -x c++ -std=c++17 -O2 -fmath-errno -tR -tP -tM -o .\Win64\Release\sgcWebSocketsC11.o -dependency-file .\Win64\Release\sgcWebSocketsC11.d -MT .\Win64\Release\sgcWebSocketsC11.o -sys-header-deps sgcWebSocketsC11.cpp BuildVersionResource: C:\Program Files (x86)\Embarcadero\Studio\22.0\bin\cgrc.exe -c65001 .\Win64\Release\sgcWebSocketsC11.vrc -fo.\Win64\Release\sgcWebSocketsC11.res CodeGear Resource Compiler/Binder Version 1.2.2 Copyright (c) 2008-2012 Embarcadero Technologies Inc. Microsoft (R) Windows (R) Resource Compiler Version 6.0.5724.0 Copyright (C) Microsoft Corporation. All rights reserved. Deleting file ".\Win64\Release\sgcWebSocketsC11.vrc". _PerformBCCILink: C:\Program Files (x86)\Embarcadero\Studio\22.0\bin\ilink64.exe -G8 -L.\Win64\Release;..\Source;..\libD11\Win64;C:\Users\administrator\Documents\esegece\sgcWebSockets\LibD11\Win64;C:\Users\administrator\Documents\esegece\sgcWebSockets\Source;"c:\program files (x86)\embarcadero\studio\22.0\lib\win64\release";"c:\program files (x86)\embarcadero\studio\22.0\lib\win64\release\psdk";C:\Users\Public\Documents\Embarcadero\Studio\22.0\Dcp\Win64;C:\Users\Public\Documents\Embarcadero\Studio\22.0\DCP\Win64\Release;C:\Users\Public\Documents\Embarcadero\Studio\22.0\Dcp\Win64;..\libD11\Win64 -j.\Win64\Release;..\Source;..\libD11\Win64;C:\Users\administrator\Documents\esegece\sgcWebSockets\LibD11\Win64;C:\Users\administrator\Documents\esegece\sgcWebSockets\Source;"c:\program files (x86)\embarcadero\studio\22.0\lib\win64\release";"c:\program files (x86)\embarcadero\studio\22.0\lib\win64\release\psdk";C:\Users\Public\Documents\Embarcadero\Studio\22.0\Dcp\Win64;C:\Users\Public\Documents\Embarcadero\Studio\22.0\DCP\Win64\Release;C:\Users\Public\Documents\Embarcadero\Studio\22.0\Dcp\Win64;..\libD11\Win64 -lC:\Users\Public\Documents\Embarcadero\Studio\22.0\DCP\Win64\Release -Gi -Gn -D"SGC WebSockets" -Gpr -GBsgcWebSocketsC11 -Tpp c0pkg64 dbrtl.bpi IndyCore.bpi IndyProtocols.bpi IndySystem.bpi rtl.bpi memmgr.a sysinit.o .\Win64\Release\sgcWebSocketsC11.o ..\libD11\Win64\sgcBase_Classes.o ..\libD11\Win64\sgcBase_Const.o ..\libD11\Win64\sgcBase_Helpers.o ..\libD11\Win64\sgcBase_Sync.o ..\libD11\Win64\sgcHTTP.o ..\libD11\Win64\sgcHTTP_Amazon_AWS.o ..\libD11\Win64\sgcHTTP_Amazon_AWS_Signature.o ..\libD11\Win64\sgcHTTP_Amazon_SQS.o ..\libD11\Win64\sgcHTTP_API.o ..\libD11\Win64\sgcHTTP_API_Binance.o ..\libD11\Win64\sgcHTTP_API_Coinbase.o ..\libD11\Win64\sgcHTTP_API_FTX.o ..\libD11\Win64\sgcHTTP_API_Kraken.o ..\libD11\Win64\sgcHTTP_Classes.o ..\libD11\Win64\sgcHTTP_Client.o ..\libD11\Win64\sgcHTTP_Const.o ..\libD11\Win64\sgcHTTP_Google_Calendar.o ..\libD11\Win64\sgcHTTP_Google_Cloud.o ..\libD11\Win64\sgcHTTP_Google_PubSub.o ..\libD11\Win64\sgcHTTP_Helpers.o ..\libD11\Win64\sgcHTTP_JWT_Classes.o ..\libD11\Win64\sgcHTTP_JWT_Client.o ..\libD11\Win64\sgcHTTP_JWT_ES.o ..\libD11\Win64\sgcHTTP_JWT_Helpers.o ..\libD11\Win64\sgcHTTP_JWT_HMAC.o ..\libD11\Win64\sgcHTTP_JWT_RSA.o ..\libD11\Win64\sgcHTTP_JWT_Types.o ..\libD11\Win64\sgcHTTP_MultipartFormData.o ..\libD11\Win64\sgcHTTP_OAuth2_Client.o ..\libD11\Win64\sgcHTTP_OAuth_Client.o ..\libD11\Win64\sgcIoT.o ..\libD11\Win64\sgcIoT_Amazon_MQTT_Client.o ..\libD11\Win64\sgcIoT_Azure_MQTT_Client.o ..\libD11\Win64\sgcIoT_Classes.o ..\libD11\Win64\sgcIoT_Client.o ..\libD11\Win64\sgcIoT_MQTT_Client.o ..\libD11\Win64\sgcIWWebSocket.o ..\libD11\Win64\sgcIWWebSocket_Client.o ..\libD11\Win64\sgcJSON.o ..\libD11\Win64\sgcLib_RCON_Client.o ..\libD11\Win64\sgcLib_Telegram.o ..\libD11\Win64\sgcLib_Telegram_Client.o ..\libD11\Win64\sgcP2P.o ..\libD11\Win64\sgcHTTP_OpenAPI_Client_Amazon.o ..\libD11\Win64\sgcLibs.o ..\libD11\Win64\sgcSocket_Classes.o ..\libD11\Win64\sgcSocket_Classes_Indy.o ..\libD11\Win64\sgcSocket_Const.o ..\libD11\Win64\sgcSTOMP.o ..\libD11\Win64\sgcP2P_STUN_Classes.o ..\libD11\Win64\sgcP2P_STUN_Client.o ..\libD11\Win64\sgcP2P_STUN_Helpers.o ..\libD11\Win64\sgcP2P_STUN_Types.o ..\libD11\Win64\sgcTCP_Classes.o ..\libD11\Win64\sgcTCP_Classes_Indy.o ..\libD11\Win64\sgcTCP_Client.o ..\libD11\Win64\sgcUDP_Classes.o ..\libD11\Win64\sgcUDP_Classes_Indy.o ..\libD11\Win64\sgcUDP_Client.o ..\libD11\Win64\sgcWebSocket.o ..\libD11\Win64\sgcWebSocket_APIs.o ..\libD11\Win64\sgcWebSocket_API_Binance.o ..\libD11\Win64\sgcWebSocket_API_Bitfinex.o ..\libD11\Win64\sgcWebSocket_API_Bitmex.o ..\libD11\Win64\sgcWebSocket_API_Bitstamp.o ..\libD11\Win64\sgcWebSocket_API_Bittrex.o ..\libD11\Win64\sgcWebSocket_API_Blockchain.o ..\libD11\Win64\sgcWebSocket_API_Cex.o ..\libD11\Win64\sgcWebSocket_API_Coinbase.o ..\libD11\Win64\sgcWebSocket_API_Discord.o ..\libD11\Win64\sgcWebSocket_API_FTX.o ..\libD11\Win64\sgcWebSocket_API_FXCM.o ..\libD11\Win64\sgcWebSocket_API_Huobi.o ..\libD11\Win64\sgcWebSocket_API_Kraken.o ..\libD11\Win64\sgcWebSocket_API_Pusher.o ..\libD11\Win64\sgcWebSocket_API_SignalR.o ..\libD11\Win64\sgcWebSocket_API_SignalRCore.o ..\libD11\Win64\sgcWebSocket_API_SocketIO.o ..\libD11\Win64\sgcWebSocket_Classes.o ..\libD11\Win64\sgcWebSocket_Classes_Indy.o ..\libD11\Win64\sgcWebSocket_Classes_Queues.o ..\libD11\Win64\sgcWebSocket_Classes_Sockets.o ..\libD11\Win64\sgcWebSocket_Classes_SyncObjs.o ..\libD11\Win64\sgcWebSocket_Classes_WinHTTP.o ..\libD11\Win64\sgcWebSocket_Client.o ..\libD11\Win64\sgcWebSocket_Client_WinHTTP.o ..\libD11\Win64\sgcWebSocket_Const.o ..\libD11\Win64\sgcWebSocket_CustomClient.o ..\libD11\Win64\sgcWebSocket_Extensions.o ..\libD11\Win64\sgcWebSocket_Extension_Base.o ..\libD11\Win64\sgcWebSocket_Extension_DeflateFrame.o ..\libD11\Win64\sgcWebSocket_Extension_PerMessage_Deflate.o ..\libD11\Win64\sgcWebSocket_Helpers.o ..\libD11\Win64\sgcWebSocket_HTTPResponse.o ..\libD11\Win64\sgcWebSocket_LoadBalancer_Client.o ..\libD11\Win64\sgcWebSocket_LoadBalancer_Message.o ..\libD11\Win64\sgcWebSocket_Protocols.o ..\libD11\Win64\sgcWebSocket_Protocol_Base_Client.o ..\libD11\Win64\sgcWebSocket_Protocol_Base_Message.o ..\libD11\Win64\sgcWebSocket_Protocol_Broker_Client.o ..\libD11\Win64\sgcWebSocket_Protocol_Broker_Message.o ..\libD11\Win64\sgcWebSocket_Protocol_MQTT_Client.o ..\libD11\Win64\sgcWebSocket_Protocol_MQTT_Message.o ..\libD11\Win64\sgcWebSocket_Protocol_STOMP_ActiveMQ_Client.o ..\libD11\Win64\sgcWebSocket_Protocol_STOMP_Broker_Client.o ..\libD11\Win64\sgcWebSocket_Protocol_STOMP_Client.o ..\libD11\Win64\sgcWebSocket_Protocol_STOMP_Message.o ..\libD11\Win64\sgcWebSocket_Protocol_STOMP_RabbitMQ_Client.o ..\libD11\Win64\sgcWebSocket_Protocol_WAMP2_Client.o ..\libD11\Win64\sgcWebSocket_Protocol_WAMP2_Message.o ..\libD11\Win64\sgcWebSocket_Resources.o ..\libD11\Win64\sgcWebSocket_Types.o ..\libD11\Win64\sgcWebSocket_WinAPI.o ..\libD11\Win64\sgcWebSocket_API_ThreeCommas.o ..\libD11\Win64\sgcHTTP_API_ThreeCommas.o ..\libD11\Win64\sgcAMQP.o ..\libD11\Win64\sgcAMQP_Classes.o ..\libD11\Win64\sgcAMQP_Client.o ..\libD11\Win64\sgcAMQP_Const.o ..\libD11\Win64\sgcAMQP_Helpers.o ..\libD11\Win64\sgcHTTP_API_Bitmex.o ..\libD11\Win64\sgcHTTP_API_Kucoin.o ..\libD11\Win64\sgcWebSocket_API_Kucoin.o ..\libD11\Win64\sgcWebSocket_Protocol_AMQP_Client.o ..\libD11\Win64\sgcWebSocket_Protocol_AMQP_Message.o ..\libD11\Win64\sgcHTTP_OpenAPI_Client.o ..\libD11\Win64\sgcHTTP_OpenAPI_Client_Google.o ..\libD11\Win64\sgcHTTP_OpenAPI_Client_Microsoft.o ..\libD11\Win64\sgcHTTP_OAuth2_Client_Google.o ..\libD11\Win64\sgcHTTP_OAuth2_Client_Microsoft.o ..\libD11\Win64\sgcWebSocket_API_OKX.o ..\libD11\Win64\sgcHTTP_OpenAPI_Client8.o ..\libD11\Win64\sgcHTTP_OpenAPI_Client9.o , C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\Win64\sgcWebSocketsC11.bpl , C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\Win64\sgcWebSocketsC11.map , import64.a cp64mti.a , , .\Win64\Release\sgcWebSocketsC11.res C:\Program Files (x86)\Embarcadero\Studio\22.0\Bin\CodeGear.Cpp.Targets(3980,5): error : Fatal: Error detected (WRI237) [C:\Users\administrator\Documents\esegece\sgcWebSockets\Packages\sgcWebSocketsC11.cbproj] Done Building Project "C:\Users\administrator\Documents\esegece\sgcWebSockets\Packages\sgcWebSocketsC11.cbproj" (Build target(s)) -- FAILED. ERROR al compilar. "C:\Users\administrator\Documents\esegece\sgcWebSockets\Packages\sgcWebSocketsC11.cbproj" (Build destino) (1) -> (_PerformBCCILink destino) -> C:\Program Files (x86)\Embarcadero\Studio\22.0\Bin\CodeGear.Cpp.Targets(3980,5): error : Fatal: Error detected (WRI237) [C:\Users\administrator\Documents\esegece\sgcWebSockets\Packages\sgcWebSocketsC11.cbproj] 0 Advertencia(s) 1 Errores Tiempo transcurrido 00:00:06.46 If I try to build the package from the IDE, it works, no error is shown. I've been comparing the commands used by the IDE and msbuild and I don't see big differences between them. I am still trying to find why it fails. Kind Regards, Sergio
  13. esegece

    MQTT: advice wanted

    Hello, Yes, mTLS is supported, the client can be configured with a client certificate, so the server can authenticate the client using the certificate, this is used by some IoT vendors like Amazon AWS or Azure, which are supported too. Kind Regards, Sergio
  14. esegece

    MQTT: advice wanted

    Hi Javier, I am Sergio, the developer behind esegece.com. The MQTT client supports 3.1.1 and 5.0 protocol versions, additionally you can connect using MQTT over TCP or MQTT over WebSocket protocol, so no problem connecting to a mosquitto server. You can download the trial to test if the product fits your needs: https://www.esegece.com/websockets/download/download-delphi-cbuilder And if you have any doubts or concerns you can use the following online contact form: https://www.esegece.com/contact Kind Regards, Sergio
  15. sgcWebSockets is a complete package providing access to WebSocket, MQTT, STOMP, AMQP, HTTP/2, STUN, TURN... and more protocols and APIs.  What's new in latest versions - Added support for WhatsApp Cloud API. Meta (formally Facebook) announced recently that all businesses can now access WhatsApp Cloud API for free (the requirement of using a third-party solution provider is not needed anymore). The API allows to send Text, Media, Location and Interactive Messages. Receive notification status about messages sent and much more. https://www.esegece.com/community/blog/delphi-whatsapp-cloud-api An online WhatsApp Bot demo is available, just open the following link in your phone and send any text message to interactuate with the Bot. https://www.esegece.com/demo/whatsapp - OpenAPI Pascal Client Parser can generate client SDKs for any API: OpenAPI 3.0, Swagger 2.0 and Swagger 1.0 (JSON or YAML formats). The following SDKs have been generated: Amazon AWS SDK, Google Cloud SDK and Microsoft Azure SDK. https://www.esegece.com/openapi Main Features: - WebSocket and HTTP/2 Support: sgcWebSockets includes client and server-side implementations of the WebSocket protocol (RFC 6455). HTTP/s is also full supported. Support for plain TCP is also included. - SSL/TLS for Security: Your messages are secure using our SSL/TLS implementation. Widest compatibility via support for modern TLS 1.3 and TLS 1.2 - Protocols and APIs: Several protocols are supported: MQTT (3.1.1 and 5.0), STOMP, AMQP, WEBRTC, SIGNALR CORE, WAMP... Built-in protocols support Transactions, Datasets, QoS, big file transfers and more. APIs supported for third-parties like Binance, Coinbase, Kraken, FTX... - Cross-platform: Share your code using our WebSockets library for your Delphi VCL, Firemonkey, Javascript and .NET projects. Includes Server, Clients and several protocols for building and connecting to WebSocket applications. - High Performance WebSocket Server based on Microsoft HTTP Framework and IOCP. - WhatsApp and Telegram clients. - Authorization protocols like OAuth2 and JWT are supported on Server and Client Components. - STUN and TURN protocols are supported on Server and Client Components - OpenAPI Pascal Client Generator for OpenAPI 3.0 and Swagger 1.0-2.0. Trial Version: https://www.esegece.com/websockets/download/download-delphi-cbuilder Compiled Demos: https://download.esegece.com/sgcWebSockets_bin.zip More Info: https://www.esegece.com/websockets
  16. sgcWebSockets is a complete package providing access to WebSocket, MQTT, STOMP, AMQP, HTTP/2, STUN, TURN... and more protocols and APIs.  What's new in latest versions - Added support for AMQP 0.9.1 client protocol. - Servers can integrate external OAuth2 Providers like Azure AD, Google, Facebook... so the user can login using Azure Account. - Implemented Kucoin Client WebSocket and REST APIs (sport and futures). - Improved Binance and FTX clients, now support Binance.us and FTX.us brokers. - Updated Telegram libraries to the latest version (Windows, OSX, Android, iOS and Linux). Main Features: - WebSocket and HTTP/2 Support: sgcWebSockets includes client and server-side implementations of the WebSocket protocol (RFC 6455). HTTP/s is also full supported. Support for plain TCP is also included. - SSL/TLS for Security: Your messages are secure using our SSL/TLS implementation. Widest compatibility via support for modern TLS 1.3 and TLS 1.2 - Protocols and APIs: Several protocols are supported: MQTT (3.1.1 and 5.0), STOMP, AMQP, WEBRTC, SIGNALR CORE, WAMP... Built-in protocols support Transactions, Datasets, QoS, big file transfers and more. APIs supported for third-parties like Binance, Coinbase, Kraken, FTX... - Cross-platform: Share your code using our WebSockets library for your Delphi VCL, Firemonkey, Javascript and .NET projects. Includes Server, Clients and several protocols for building and connecting to WebSocket applications. - High Performance WebSocket Server based on Microsoft HTTP Framework and IOCP. - Authorization protocols like OAuth2 and JWT are supported on Server and Client Components. - STUN and TURN protocols are supported on Server and Client Components Trial Version: https://www.esegece.com/websockets/download/download-delphi-cbuilder Compiled Demos: https://download.esegece.com/sgcWebSockets_bin.zip More Info: https://www.esegece.com/websockets
  17. Hi, I am Sergio the developer of sgcWebsockets library (esegece.com). The MQTT protocol is supported (3.1.1 and 5.0) on plain TCP and WebSocket connections (secure connections are supported too) and can be compiled on all Delphi personalities (windows, mobile, linux...). You can check the following link, which contains more info about the MQTT client component: https://www.esegece.com/websockets/protocols/mqtt The documentation can be accessed from here: https://www.esegece.com/help/sgcWebSockets/#t=Components%2FProtocols%2FSubprotocols%2FMQTT%2FProtocol_MQTT.htm Kind Regards, Sergio
  18. sgcWebSockets is a complete package providing access to WebSocket, MQTT, STOMP, HTTP/2, STUN, TURN... and more protocols and APIs.  What's new - Added support for OpenSSL 3.0.0 (Windows, OSX, Android, iOS and Linux) - Added support for RTCMultiConnection, which is a WebRTC JavaScript library for peer-to-peer applications (screen sharing, audio/video conferencing, file sharing, media streaming etc.) Multi-User Video Conference Screen Sharing Video Broadcasting Main Features: - WebSocket and HTTP/2 Support: sgcWebSockets includes client and server-side implementations of the WebSocket protocol (RFC 6455). HTTP/s is also full supported. Support for plain TCP is also included. - SSL/TLS for Security: Your messages are secure using our SSL/TLS implementation. Widest compatibility via support for modern TLS 1.3 and TLS 1.2 - Protocols and APIs: Several protocols are supported: MQTT (3.1.1 and 5.0), STOMP, WEBRTC, SIGNALR CORE, WAMP... Built-in protocols support Transactions, Datasets, QoS, big file transfers and more. APIs supported for third-parties like Binance, Coinbase, Kraken, FTX... - Cross-platform: Share your code using our WebSockets library for your Delphi VCL, Firemonkey, Javascript and .NET projects. Includes Server, Clients and several protocols for building and connecting to WebSocket applications. - High Performance WebSocket Server based on Microsoft HTTP Framework and IOCP. - Authorization protocols like OAuth2 and JWT are supported on Server and Client Components. - STUN and TURN protocols are supported on Server and Client Components Trial Version: https://www.esegece.com/websockets/download/download-delphi-cbuilder Compiled Demos: https://download.esegece.com/sgcWebSockets_bin.zip More Info: https://www.esegece.com/websockets
  19. sgcWebSockets is a complete package providing access to WebSocket, MQTT, STOMP, HTTP/2, STUN, TURN... and more protocols and APIs.  What's new - Support for Rad Studio 11 Alexandria, including the new OSXARM64. - New STUN/TURN Server and client 100% Pascal Code allowing to create Video conferences using WebRTC protocol and a WebBrowser as client. TURN Protocol TURN Client Component TURN Server Component STUN/TURN Server and Client The following online Demo shows how to create a Video Conference using the sgcWebSockets STUN/TURN server to bind/relay data and a WebSocket Server for signaling. The Demo is based on the AppRTC application from Github. WebRTC Demo - A new online Demo showing how integrate DevExtreme Data Grid with sgcWebSockets library, providing real-time updates using WebSocket as protocol. https://www.esegece.com:2053/devextreme_grid Main Features: - WebSocket and HTTP/2 Support: sgcWebSockets includes client and server-side implementations of the WebSocket protocol (RFC 6455). HTTP/s is also full supported. Support for plain TCP is also included. - SSL/TLS for Security: Your messages are secure using our SSL/TLS implementation. Widest compatibility via support for modern TLS 1.3 and TLS 1.2 - Protocols and APIs: Several protocols are supported: MQTT (3.1.1 and 5.0), STOMP, WEBRTC, SIGNALR CORE, WAMP... Built-in protocols support Transactions, Datasets, QoS, big file transfers and more. APIs supported for third-parties like Binance, Coinbase, Kraken, FTX... - Cross-platform: Share your code using our WebSockets library for your Delphi VCL, Firemonkey, Javascript and .NET projects. Includes Server, Clients and several protocols for building and connecting to WebSocket applications. - High Performance WebSocket Server based on Microsoft HTTP Framework and IOCP. Trial Version: https://www.esegece.com/websockets/download Compiled Demos: https://download.esegece.com/sgcWebSockets_bin.zip More Info: https://www.esegece.com/websockets
  20. esegece

    RAD Studio 11 Alexandria is now available

    The installation now works for me, I've received a response from Embarcadero support, I paste below: This is a known issue that we have resolved earlier today. Please follow these steps to resolve the license error: In the Product Registration window please select the Advanced button - The Embarcadero License Manager will Launch - In the License Manager please click the Delete button to delete your license - Click the Register button and re-register your license - Click Done and this will continue the installation. For isolated or offline machines you will need to obtain a new activation file from https://license.embarcadero.com/srs6/activation.do
  21. esegece

    RAD Studio 11 Alexandria is now available

    Well, after installing Delphi 11, has taken the license from the beta... so, this method is not working at all... Sergio
  22. esegece

    RAD Studio 11 Alexandria is now available

    I've been trying to install Delphi 11 without luck (using the different methods posted) until I tried to install in the test machine where the Olympus Beta was installed, and it worked! So, I installed in my production machine the Key for the Beta, and then used the update button to update the license. This let me install Rad Studio 11.0 without problems. Maybe it helps someone else. Sergio
  23. sgcWebSockets is a complete package providing access to HTML5 WebSockets API (WebSocket is a web technology providing for bi-directional, full-duplex communications channels, over a single Transmission Control Protocol (TCP) socket) allowing to create WebSocket Servers, and WebSocket clients in VCL, Lazarus and Firemonkey Applications.  What's new - New STUN Server and client components, allows to discover public IP address and can be used for WebRTC applications. STUN Delphi Client and Server - Apple Push Notifications Support using HTTP/2 client component. How Register App Send HTTP/2 Notifications Apple Push Notifications using JWT Apple Push Notifications using a Certificate - Improved OAuth2 Client, now supports Client Credentials, this means that can run as a service or an automated application. OAuth2 Client Credentials - FTX API is now supported allowing to receive real-time market data, place new orders, manage account and more. FTX API Client - Free TradeBar Application for Binance and Coinbase Pro Brokers. Shows how use sgcWebSockets API Clients to send Orders to the Broker. TradeBar for Binance TradeBar for Coinbase Pro Main Features: - WebSocket and HTTP/2 Support: sgcWebSockets includes client and server-side implementations of the WebSocket protocol (RFC 6455). HTTP/s is also full supported. Support for plain TCP is also included. - SSL/TLS for Security: Your messages are secure using our SSL/TLS implementation. Widest compatibility via support for modern TLS 1.3 and TLS 1.2 - Protocols and APIs: Several protocols are supported: MQTT (3.1.1 and 5.0), STOMP, WEBRTC, SIGNALR CORE, WAMP... Built-in protocols support Transactions, Datasets, QoS, big file transfers and more. APIs supported for third-parties like Binance, Coinbase, Kraken, FTX... - Cross-platform: Share your code using our WebSockets library for your Delphi VCL, Firemonkey, Javascript and .NET projects. Includes Server, Clients and several protocols for building and connecting to WebSocket applications. - High Performance WebSocket Server based on Microsoft HTTP Framework and IOCP. Trial Version: https://www.esegece.com/websockets/download Compiled Demos: https://www.esegece.com/download/sgcWebSockets_bin.zip More Info: https://www.esegece.com/websockets
  24. esegece

    iOS push notification http/2

    Hi, sgcWebSockets (which I am the developer) supports HTTP/2 in Client and Server components (source code is 100% Delphi code without external dependencies, except openSSL libraries), so you can send push notifications using HTTP/2 protocol. To send notifications you can use Token-Based or Certificate-Based trust with APNs using HTTP/2 protocol and TLS 1.2 or later, both types of authentication are supported by sgcWebSockets. You can read more about this from the links below: Documentation Apple Push Notifications HTTP/2 Compiled Demo https://www.esegece.com/download/protocols/sgcApplePushNotifications.zip (Demo sources can be found in the trial, in folder: Demos\20.HTTP_Protocol\07.Apple_Push_Notifications) Trial https://www.esegece.com/websockets/download/download-delphi-cbuilder Kind Regards, Sergio
×