Exemple #1
0
        /// <summary>
        /// 回复服务器心跳
        /// </summary>
        private void ReplyPong()
        {
            var msg  = DateTimeHelper.ToString();
            var data = new WSProtocal(WSProtocalType.Pong, null).ToBytes();

            base.Send(data);
        }
Exemple #2
0
        public void Close(string discription = "客户端主动断开ws连接")
        {
            var msg  = DateTimeHelper.ToString();
            var data = new WSProtocal(WSProtocalType.Close, Encoding.UTF8.GetBytes(discription)).ToBytes();

            base.Send(data);
        }
Exemple #3
0
        /// <summary>
        /// 发送ping包
        /// </summary>
        public void Ping()
        {
            var msg  = DateTimeHelper.ToString();
            var data = new WSProtocal(WSProtocalType.Ping, Encoding.UTF8.GetBytes(msg)).ToBytes();

            base.Send(data);
        }
Exemple #4
0
        public void Disconnect(string id, WSProtocal data)
        {
            var channelInfo = ChannelManager.Instance.Get(id);

            ReplyBase(channelInfo.Stream, data);

            channelInfo.Stream.Close();
        }
Exemple #5
0
 private void ReplyPong(Stream stream, WSProtocal data)
 {
     ReplyBase(stream, WSProtocalType.Pong, data.Content);
 }
Exemple #6
0
        private void ReplyBase(Stream stream, WSProtocal data)
        {
            var byts = data.ToBytes();

            stream.Write(byts, 0, byts.Length);
        }
Exemple #7
0
        private void ReplyBase(string id, WSProtocalType type, byte[] content)
        {
            var byts = new WSProtocal(type, content).ToBytes();

            _server.SendAsync(id, byts);
        }
Exemple #8
0
 /// <summary>
 /// 回复客户端消息
 /// </summary>
 /// <param name="id"></param>
 /// <param name="data"></param>
 public void Reply(string id, WSProtocal data)
 {
     ReplyBase(id, data);
 }
Exemple #9
0
 private void ReplyPong(string id, WSProtocal data)
 {
     ReplyBase(id, WSProtocalType.Pong, data.Content);
 }
Exemple #10
0
 /// <summary>
 /// 发送关闭
 /// </summary>
 /// <param name="id"></param>
 /// <param name="data"></param>
 public void Disconnect(string id, WSProtocal data)
 {
     _wsServer.Disconnect(id, data);
 }
Exemple #11
0
        /// <summary>
        /// 发送数据到wsserver
        /// </summary>
        /// <param name="msg"></param>
        /// <param name="type"></param>
        public void Send(byte[] msg, WSProtocalType type = WSProtocalType.Text)
        {
            var data = new WSProtocal(type, msg).ToBytes();

            base.Send(data);
        }
Exemple #12
0
        private void ReplyBase(WSUserToken ut, WSProtocal data)
        {
            var byts = data.ToBytes();

            base.SendAsync(ut.ID, byts);
        }
Exemple #13
0
        public void Reply(string id, WSProtocal data)
        {
            var channelInfo = ChannelManager.Instance.Get(id);

            ReplyBase(channelInfo.Stream, data);
        }
Exemple #14
0
 private static void Client_OnMessage(WSProtocal data)
 {
     ConsoleHelper.WriteLine("WSClient 收到的消息:{0}", ConsoleColor.DarkGray, Encoding.UTF8.GetString(data.Content));
 }
Exemple #15
0
        private static void Server_OnMessage(string id, WSProtocal data)
        {
            ConsoleHelper.WriteLine("WSServer 收到{0}的消息:{1}", ConsoleColor.Green, id, Encoding.UTF8.GetString(data.Content));

            _server.Reply(id, data);
        }
Exemple #16
0
 /// <summary>
 /// 回复客户端消息
 /// </summary>
 /// <param name="id"></param>
 /// <param name="data"></param>
 public void Reply(string id, WSProtocal data)
 {
     _wsServer.Reply(id, data);
 }
Exemple #17
0
 private void WsServer_OnMessage(string str, WSProtocal protocal)
 {
     this.OnMessage?.Invoke(str, protocal);
 }
Exemple #18
0
 private void ReplyClose(Stream stream, WSProtocal data)
 {
     ReplyBase(stream, WSProtocalType.Close, data.Content);
 }
Exemple #19
0
        public void Disconnect(string id, WSProtocal data)
        {
            var channelInfo = ChannelManager.Current.Get(id);

            ReplyBase(channelInfo.Stream, data);
        }
Exemple #20
0
        private void ReplyBase(string id, WSProtocalType type, byte[] content)
        {
            var bs = new WSProtocal(type, content);

            ReplyBase(id, bs);
        }
Exemple #21
0
 private void ReplyPong(WSUserToken ut, WSProtocal data)
 {
     ReplyBase(ut, WSProtocalType.Pong, data.Content);
 }
Exemple #22
0
 /// <summary>
 /// 发送关闭
 /// </summary>
 /// <param name="id"></param>
 /// <param name="data"></param>
 public void Disconnect(string id, WSProtocal data)
 {
     ReplyBase(id, data);
     OnDisconnected?.Invoke(id);
 }
Exemple #23
0
 private void ReplyClose(WSUserToken ut, WSProtocal data)
 {
     ReplyBase(ut, WSProtocalType.Close, data.Content);
 }
Exemple #24
0
        /// <summary>
        /// 回复客户端消息
        /// </summary>
        /// <param name="ID"></param>
        /// <param name="data"></param>
        public void Reply(string ID, WSProtocal data)
        {
            var ut = SessionManager.Get(ID);

            ReplyBase((WSUserToken)ut, data);
        }
Exemple #25
0
        private void ReplyBase(string id, WSProtocal data)
        {
            var bs = data.ToBytes(false);

            _server.SendAsync(id, bs);
        }
Exemple #26
0
        private void ReplyBase(WSUserToken ut, WSProtocalType type, byte[] content)
        {
            var byts = new WSProtocal(type, content).ToBytes();

            base.SendAsync(ut.ID, byts);
        }
Exemple #27
0
 private void ReplyClose(string id, WSProtocal data)
 {
     ReplyBase(id, WSProtocalType.Close, data.Content);
 }
Exemple #28
0
        private void ReplyBase(Stream stream, WSProtocalType type, byte[] content)
        {
            var byts = new WSProtocal(type, content).ToBytes();

            stream.Write(byts, 0, byts.Length);
        }
Exemple #29
0
 /// <summary>
 /// 发送关闭
 /// </summary>
 /// <param name="id"></param>
 /// <param name="data"></param>
 public void Disconnect(string id, WSProtocal data)
 {
     ReplyBase(id, data);
     _server.Disconnecte(id);
 }
Exemple #30
0
        /// <summary>
        /// 发送数据到wsserver
        /// </summary>
        /// <param name="msg"></param>
        /// <param name="type"></param>
        public void Send(byte[] msg, WSProtocalType type = WSProtocalType.Text)
        {
            var data = new WSProtocal(type, msg).ToBytes();

            _client.SendAsync(data);
        }