HTTP2 vs HTTP1 Performance

sgcWebSockets supports a wide range of protocols, HTTP/2 is the protocol which is in development right now.  HTTP 1.1 has been the most used HTTP Protocol and wide implemented in server and clients during the last 15 years. But as internet grows, applications and webs growed and the amount of loaded data increased, the shor...

Continue reading

iOS Telegram Client

From sgcWebSockets 4.4.2 Telegram is supported for iOS64 devices, which means that you can build your own telegram client. TDLib takes care of all network implementation details, encryption and local data storage. TDLib supports all Telegram features. TDLib (Telegram Database Library) Advantages Cross-platform: can be used on Windows, Android,...

Continue reading

WebSockets TMS Sparkle

A customer ask if TMS Sparkle and sgcWebSockets can run together, and the answer is yes, there is no problem running sgcWebSockets and TMS Sparkle on the same server. Both can run using HTTP.SYS server, you can run a single HTTP.SYS server and configure endpoints to run with Sparkle and sgcWebSockets without problems. Basically you configure i...

Continue reading

Binance Futures API

From sgcWebSockets 4.2.2 Binance Futures API is fully supported. 1. Added support for live subscriptions in websocket api. 2. Added support for user stream websocket data. 3. Added support for Rest API:   3.1 Market Data Endpoints: exchange information, kline, tickers...   3.2 Account / Trades Endpoints: send orders, get account...

Continue reading

sgcWebSockets 4.4.1

Changes included in sgcWebSockets 4.4.1 [+] : Improved Telegram API Component, added support for Android. [+] : New property "DatabaseDirectory" in Telegram Client. Allows to set the directory where is the TDLib database. [+] : Improved Telegram Demo to ask user for a password if telegram component requires it. [+] : Improved speed reading websocke...

Continue reading

Android Telegram Client

From sgcWebSockets 4.4.1 Telegram is supported for Android devices, which means that you can build your own telegram client. TDLib takes care of all network implementation details, encryption and local data storage. TDLib supports all Telegram features. TDLib (Telegram Database Library) Advantages Cross-platform: can be used on Windows, Androi...

Continue reading

sgcWebSockets 4.4.0

 Changes included in sgcWebSockets 4.4.0 [+] : Added support for Rad Studio 10.4 Sydney. [+] : Improved Telegram API Component, added support for OSX64. [+] : Improved Telegram API Component, added support for Linux64. [+] : Improved Telegram API Component, use SetTDJsonPath to set the path of tdjson library. [+] : New Telegram Demo built with...

Continue reading

Rad Studio 10.4

I am happy to announce the immediate availability of support for Rad Studio 10.4 on sgcWebSockets library. Registered users can download latest beta from private account. Next release will include support from Delphi 7 to Rad Studio 10.4 versions. https://www.embarcadero.com/products/rad-studio/whats-new-in-10-4-sydney

RPC Progressive Results

WAMP 1.0 is an open WebSocket subprotocol that provides two asynchronous messaging patterns: RPC and PubSub. From sgcWebSockets 4.3.8, a new method is supported, not included in WAMP 1.0 specification, but it can be very useful for our users. WAMP allows RPC calls, but server response can only be successful or not. Sometimes, an RPC requires more t...

Continue reading

UpdateMode in DataSet Protocol

sgcWebSockets Dataset Subprotocol allows to broadcast database changes to all client connected. From sgcWebSockets 4.3.8 this protocol allows 2 update modes: 1. Replicate Table: protocol updates dataset clients when a dataset has changed. 2. Notify Updates: protocol notifies clients when a dataset has changed.  Replicate Table  This mode ...

Continue reading

WebSockets for Delphi and CBuilder

WebSocket is a computer communications protocol, providing full-duplex communication channels over a single TCP connection.The WebSocket protocol enables interaction between a web browser (or other client application, like VCL Application) and a web server with lower overhead than half-duplex alternatives such as HTTP polling, facilitating real-tim...

Continue reading

WebSockets .NET

WebSocket is a computer communications protocol, providing full-duplex communication channels over a single TCP connection.The WebSocket protocol enables interaction between a web browser (or other client application, like .NET Application) and a web server with lower overhead than half-duplex alternatives such as HTTP polling, facilitating real-ti...

Continue reading
Tags:

Indy supports ALPN (Application Layer Protocol Negotiation)

ALPN or Application Layer Protocol Name is a TLS extension that includes the protocol negotiation within the exchange of hello messages. ALPN is able to negotiate which protocol should be handled over a secure connection in a way that is more efficient and avoids additional round trips. The ever-growing in popularity HTTP/2 protocol, makes use...

Continue reading

Support for Rad Studio 10.3.3 and Android 64-bit

Latest version of Rad Studio, November 21st, 2019, includes new features like Delphi Android 64-bit support, iOS 13 and MacOS Catalina support for Delphi and other enhancements. From sgcWebSockets 4.3.2, Android 64-bit is supported, so you can build 64-bit applications for Google Play Store. You can download latest beta from your personal acco...

Continue reading

Obsolete Connection String using RSA

sgcWebSockets library allows to run Secure WebSocket Servers using openSSL libraries, if you start a new secure server and try to connect with a web browser like chrome, will run fine and shows a green lock for the wss connection. But if you check the details of connection, you will see that chrome complains about security of it. Fix Cipher Suite&n...

Continue reading

Conditional Compilation sgcWebSockets

sgcWebSockets library has a configuration file located in source folder where contains all conditional compilations. This file is sgcVer.inc. If you open this file, you will see there are lots of conditional defines, basically for every Delphi / C++ Builder version, there are a bunch of conditional defines. For example, for Rad Studio 10.3 there ar...

Continue reading

WebSocket Upload File Demo

This is a demo which shows how upload a file to a websocket server. Follow the next steps: Select a file which will be sent to server.Then press connect. If connection is successful a message will show you are connected to server.Press upload button and when file has been transferred you will see a message confirming this. Upload File Demo Select f...

Continue reading

Could not load SSL library

Some libraries, like Indy, use openssl to connect to secure servers using TLS. As some components from sgcWebSockets package are based on Indy library, make use of openssl libraries and sometimes you get an error message when you can load a library. There are several reasons why you can't load the openssl library. In the following lines I will...

Continue reading

Indy IOCP Server

Indy servers use one thread for every connection, this means that if your server must handle 1000 concurrent connections, it will create 1000 threads. But if instead of 1000 connections there are 10.000 connections, it creates 10.000 threads and so on... of course, this requires exponential hardware resources and it's not usable for high load ...

Continue reading

OAuth2 Delphi WebSockets

OAuth2 allows to third-party applications to get access to restricted resources using HTTP protocol. RFC 6749 covers OAuth2 specification. There are 4 roles: ClientResource OwnerAuthorization ServerResource Server OAuth2 Flow  (A) The client requests authorization from the resource owner. The authorization request can be made directl...

Continue reading