Awesome
Horse-SocketIO
Middleware for Horse using SocketIO. Library on https://github.com/WillHubner/GenericSocket
Installation ->
Installation is done using the boss install
command:
boss install willhubner/Horse-SocketIO
How to use ->
uses
Horse,
Horse.Jhonson,
Horse.SocketIO;
begin
THorse
.Use(Jhonson)
.Use(SocketIO);
THorse.Listen(9000);
end.
Client Side ->
Install GenericSocket
boss install willhubner/genericsocket
TGenericSocket
.New
.SocketClient
.RegisterCallback('/route',
function (Message : String) : String
begin
Result := 'Callback '+Message
end
)
.Connect('192.168.0.128', 8080, '@socket_name');
Jump the Cat ->
In your request, put a HEADER named socket_client and value with the name of client socket, in the example, called "socket_name". Write your callback function acconding to the "route" especificated, map the functions that you use, when the request gets on horse, will be directed to client-socket.
The server socket will be started on port 8080.
The functions should be writen on client-socket, when the horse gets the header [socket_client] will redirect the calls.
Basic routes ->
[GET] /socket_clients
*Return all connected clients.
[GET] /socket/[route]
[POST] /socket/[route]
Function to redirect your calls
Example: https://www.youtube.com/watch?v=JYLbiNEzIgs
<details> <summary>Português</summary>Middleware para Horse utilizando SocketIO.
Biblioteca disponibilizada no link https://www.youtube.com/watch?v=nd2oqME0JAg
Para utilizar, coloque no HEADER a chave socket_client e o valor com o nome do cliente desejado.
Na aplicação cliente, mapeie as funções que deseja, quando o request bater no horse, será direcionado para o client-socket.
O servidor Socket será startado na porta 55666.
As funções serão escritas dentro do cliente, e quando o horse receber o cabeçalho [socket_client] irá redirecionar as chamadas.
Para obter a lista de clientes, chame o método /socket_clients na URL.
</details>