StackExchange / NetGain

A high performance websocket server library powering Stack Overflow.
MIT License
928 stars 141 forks source link

When can you send clients data? #8

Open vgrigoriu opened 8 years ago

vgrigoriu commented 8 years ago

I thought you can send as soon as the client connects, so I tried this:

public class ClientHandler : WebSocketsMessageProcessor
{
    protected override void OnOpened(WebSocketConnection connection)
    {
        connection.Send(Context, "hello");
    }
}

But the client didn't receive anything. A workaround I found is to have the client initiate the conversation and send whatever I need to send from OnReceive.

Is there another way to be notified when I can use the connection to talk to the client?

If it makes any difference, I'm using Websocket4Net on the client:

webSocket = new WebSocket("ws://localhost:1234/");
webSocket.Opened += WebSocket_Opened;
webSocket.MessageReceived += WebSocket_MessageReceived;
webSocket.Closed += WebSocket_Closed;
webSocket.Error += WebSocket_Error;
webSocket.Open();
DoraemonYu commented 7 years ago

I have the same problem as well.