Is there a way to archieve the following

delphi

(marcantheunis) #1

hi,
is there a way for a RO client to dial into an RO server, so a connection is alive, and that somehow this connection can be kept open to send data from the RO server to the RO client app directly
so not by a kind of polling mechanism from the client side (cause that woudl mean i have to buffer data)
but that the client ip port that is in the ip protocol to send back data could be reused to send data back to the client whenever needed?
the RO server is a kinda proxy …


(EvgenyK) #2

SuperTCP channel does this, so client receives events as soon they were sent by server.

we have the SuperTCP Channel Chat sample that illustrates this


(marcantheunis) #3

so the RO server will keep the client connection open and can send back data without the client initiating things?
will have to look into the sample…


(EvgenyK) #4

The Super TCP Channel components provide a sophisticated and flexible communication channel that uses persistent connections to enable true asynchronous calls and server callbacks.

Leveraging a custom-defined protocol on top of a raw TCP connection, the channel allows for advanced features lacking in the more traditional channel types:

  • Keep-Alive connections, with flexible ping/pong system to discover broken connections (for example due to network outages) together with seamless recovery.
  • Out of band server/client communications enable the server to actively send events or asynchronous responses back to the client without need for polling - reducing network traffic and efficiency for these callbacks.
  • Allows multiple requests to be sent at once over a single channel.

Use this channel for scenarios where extensive use is made of events and server callbacks, and wherever firewalls and proxy servers do not require the use of HTTP based channels.