コード例 #1
0
ファイル: socketio.cs プロジェクト: kersny/manos-socketio
 public void HandleMessage(ByteBuffer message, WebSocket reciever)
 {
     switch ((int)message.CurrentByte)
     {
         case 1:
             //Connect
             //Example: 1::
             //or 1::/text?my=param
             //Echo to Acknowledge
             reciever.Send(message);
             break;
         case 2:
             //Heartbeat
             //Should do timeout disconnection and removal
             //Echo to Acknowledge
             reciever.Send(message);
             break;
         case 3:
             //Message
             //Example: 3:1::blabla
             //3:[id]:[endpoint]:[data]
             Console.WriteLine(message.ToString());
             break;
         case 4:
             //JSON Message
             //Example: 4:1::{"a":"b"}
             //4:[id]:[endpoint]:[json]
             break;
         case 5:
             //Event
             //Same as JSON
             //Mandantory string name and array args
             break;
         case 6:
             //ACK
             //6:::4
             //6:::4+["A","B"]
             //Not exactly sure on this one
             break;
         case 7:
             //Error
             //7::[endpoint]:[reason]+[advice]
             break;
         case 8:
             //Noop
             break;
     }
 }
コード例 #2
0
 public WebSocketServer(string path)
 {
     Route(path, (ctx) => {
         var ws = new WebSocket(ctx);
         ws.OnConnect += () => {
             Connections.Add(ws);
             if (OnConnect != null)
                 OnConnect(ws);
         };
     });
 }
コード例 #3
0
ファイル: socketio.cs プロジェクト: kersny/manos-socketio
 public void OnConnect(WebSocket sock)
 {
     sock.Send("1::");
     var time = AppHost.AddTimeout(new TimeSpan(0, 0, 12), new InfiniteRepeatBehavior(), null, (app, data) => { sock.Send("2::"); });
     sock.OnData += (msg) => {
         Console.WriteLine("Received Message: {0}", System.Text.Encoding.UTF8.GetString(msg.Bytes, msg.Position, msg.Length));
         HandleMessage(msg, sock);
     };
 }