2

我开始使用WebSocketSharp创建一个简单的 WebSocket 服务器。这个简单的代码一切都很好:

var service = new WebSocketCustomerImageService();

var serverSocket = new WebSocketServer("ws://localhost:2000");
serverSocket.AddWebSocketService<WebSocketCustomerImageService>("/customerImageService");
serverSocket.Start();

服务等级:

    public class WebSocketCustomerImageService : WebSocketBehavior
    {
        protected override void OnMessage(MessageEventArgs e)
        {
            Send("Hello from the other side!");
        }        
    }

这很好用,当客户端发送任何消息时服务器会响应,但是现在,我希望服务器发送消息而不需要客户端发送任何内容。该Send()方法似乎只在WebSocketBehavior类上可用,我没有直接实例化这个WebSocketCustomerImageService类。

如何访问创建的实例以使用该Send()方法或实现此目的的正确方法是什么?

4

1 回答 1

5

好的,使用以下方法解决了它:

serverSocket.WebSocketServices["/customerImageService"].Sessions.Broadcast("My data");

这会发送"My data"给所有正在监听的客户端/customerImageService

于 2016-05-28T20:42:23.513 回答