//以下为服务器消息 //以下为系统信息 /// <summary> /// 获取开始失败的消息 /// </summary> /// <param name="sender"></param> /// <returns></returns> public static GetNoticeEventArgs GetStartFailed(Severs sender) { GetNoticeEventArgs e = GetSeversSystem(sender); e.content = "StartFailed"; e.message = "抱歉的说QAQ服务端开启失败。是不是已经在运行了呢……?"; return e; }
/// <summary> /// 获取开始成功的消息 /// </summary> /// <param name="sender"></param> /// <param name="ipEndPoint">服务器监听的位置</param> /// <returns></returns> public static GetNoticeEventArgs GetStartSucceed(Severs sender,IPEndPoint ipEndPoint) { GetNoticeEventArgs e = GetSeversSystem(sender); e.content = string.Format("StartSucceed,{0},{1}", ipEndPoint.Address.ToString(), ipEndPoint.Port); e.message = string.Format( "嘟嘟噜~~服务端成功运行啦~~正在监听IP:{0},端口:{1}", ipEndPoint.Address.ToString(), ipEndPoint.Port); return e; }
public static GetNoticeEventArgs GetSendToClient(Severs sender, Severs.User commucateUser, string msg) { GetNoticeEventArgs e = new GetNoticeEventArgs(sender, Attribute.SendToClient); e.relatedUser = commucateUser; e.commucateMessage = msg; EndPoint RemoteEndPoint = commucateUser.client.Client.RemoteEndPoint; e.content = string.Format("SendToClient,{0},{1}", RemoteEndPoint, msg); e.message = string.Format("向客户端{0}发送消息:\r\n{1}", RemoteEndPoint, msg); return e; }
public static GetNoticeEventArgs GetSendToClients(Severs sender, List<Severs.User> commucateUsers, string msg) { GetNoticeEventArgs e = new GetNoticeEventArgs(sender, Attribute.SendToClient); e.relatedUsers = commucateUsers; e.commucateMessage = msg; int num = commucateUsers.Count; string clientInfo = ""; string showClientInfo = ""; foreach (Severs.User u in commucateUsers) { EndPoint RemoteEndPoint = u.client.Client.RemoteEndPoint; showClientInfo += RemoteEndPoint + "\r\n"; clientInfo += RemoteEndPoint + ","; } e.content = string.Format("SendToClients,{0},{1}{2}", num, clientInfo, msg); e.message = string.Format("向{0}个客户端发送消息:\r\n{1}内容为:\r\n{2}", num, showClientInfo, msg); return e; }
private static GetNoticeEventArgs GetSeversSystem(Severs owner) { GetNoticeEventArgs e = new GetNoticeEventArgs(owner ,Attribute.SeversSystem); return e; }
public static GetNoticeEventArgs GetClientLogoff(Severs sender, Severs.User logoffUser) { GetNoticeEventArgs e = new GetNoticeEventArgs(sender, Attribute.ClientLogoff); e.relatedUser = logoffUser; EndPoint RemoteEndPoint = logoffUser.client.Client.RemoteEndPoint; e.content = string.Format("ClientLogoff,{0}", RemoteEndPoint); e.message = string.Format("好桑心T^T有一个客户端姐姐不理我啦。这货→{0}", RemoteEndPoint); return e; }
/// <summary> /// 获取服务器释放全部资源的消息 /// </summary> /// <param name="sender"></param> /// <returns></returns> public static GetNoticeEventArgs GetCloseSevers(Severs sender) { GetNoticeEventArgs e = GetSeversSystem(sender); e.content = "CloseSevers"; e.message = "啊!服务端释放全部资源……总算解放了【伸懒腰"; return e; }
/// <summary> /// 获取停止失败的消息 /// </summary> /// <param name="sender"></param> /// <returns></returns> public static GetNoticeEventArgs GetStopFailed(Severs sender) { GetNoticeEventArgs e = GetSeversSystem(sender); e.content = "StopFailded"; e.message = "服务端停止失败。很可能是因为根本没开啊魂淡= =|||"; return e; }
public GetNoticeEventArgs(Severs owner, Attribute attribute) { this.owner = owner; this.attribute = attribute; }
public static GetNoticeEventArgs GetClientRemove(Severs sender, Severs.User beRemovedUser) { GetNoticeEventArgs e = new GetNoticeEventArgs(sender, Attribute.ClientRemove); e.relatedUser = beRemovedUser; EndPoint RemoteEndPoint = beRemovedUser.client.Client.RemoteEndPoint; e.content = string.Format("ClientRemove,{0}", RemoteEndPoint); e.message = string.Format("咦!Master竟然不让我理这位客户端sama!是她做什么坏事了嘛0 0?→{0}", RemoteEndPoint); return e; }
/// <summary> /// 获取开启监听成功的消息 /// </summary> /// <param name="sender"></param> /// <returns></returns> public static GetNoticeEventArgs GetClientReceivingSucceed(Severs sender) { GetNoticeEventArgs e = GetSeversSystem(sender); e.content = "ClientReceivingSucceed"; e.message = "服务端开启监听~开门迎接客人啦~"; return e; }
/// <summary> /// 获取开启监听失败的消息 /// </summary> /// <param name="sender"></param> /// <returns></returns> public static GetNoticeEventArgs GetClientReceivingFailed(Severs sender) { GetNoticeEventArgs e = GetSeversSystem(sender); e.content = "ClientReceivingFailed"; e.message = "服务端开启监听失败呜呜~~~~(>_<)~~~~"; return e; }
public static GetNoticeEventArgs GetClientLost(Severs sender, Severs.User beRemovedUser) { GetNoticeEventArgs e = new GetNoticeEventArgs(sender, Attribute.ClientLost); e.relatedUser = beRemovedUser; EndPoint RemoteEndPoint = beRemovedUser.client.Client.RemoteEndPoint; e.content = string.Format("ClientLost,{0}", RemoteEndPoint); e.message = string.Format("不好啦!不好啦!这位客户端失踪了( ⊙ o ⊙ )→{0}", RemoteEndPoint); return e; }
/// <summary> /// 获取停止监听失败的消息 /// </summary> /// <param name="sender"></param> /// <returns></returns> public static GetNoticeEventArgs GetStopClientReceivingFailed(Severs sender) { GetNoticeEventArgs e = GetSeversSystem(sender); e.content = "StopClientReceivingFailed"; e.message = "服务端停止监听失败……才不是因为人家是⑨"; return e; }
/// <summary> /// 关闭某User的系统通知 /// </summary> /// <param name="sender"></param> /// <param name="">服务器监听的位置</param> /// <returns></returns> public static GetNoticeEventArgs GetCloseUser(Severs sender, Severs.User beClosedUser) { GetNoticeEventArgs e = GetSeversSystem(sender); e.relatedUser = beClosedUser; EndPoint RemoteEndPoint = beClosedUser.client.Client.RemoteEndPoint; e.content = string.Format("CloseUser,{0}", RemoteEndPoint); e.message = string.Format("刚刚释放了与这位客户端连接的资源_(:з」∠)_。→{0}", RemoteEndPoint); return e; }
/// <summary> /// 获取停止监听成功的消息 /// </summary> /// <param name="sender"></param> /// <returns></returns> public static GetNoticeEventArgs GetStopClientReceivingSucceed(Severs sender) { GetNoticeEventArgs e = GetSeversSystem(sender); e.content = "StopClientReceivingSucceed"; e.message = "服务端停止监听~客房满啦~新客人就不要进啦~O(∩_∩)O~~"; return e; }
/// <summary> /// 某User的大数据包接收失败 /// </summary> /// <param name="sender"></param> /// <param name="">发送者</param> /// <returns></returns> public static GetNoticeEventArgs GetLongDataReceiveFail(Severs sender, Severs.User from) { GetNoticeEventArgs e = GetSeversSystem(sender); e.relatedUser = from; EndPoint RemoteEndPoint = from.client.Client.RemoteEndPoint; e.content = string.Format("LongDataReceiveFail,{0}", RemoteEndPoint); e.message = string.Format("这货发来的数据太长了……我吃不下QAQ求重发→{0}", RemoteEndPoint); return e; }
/// <summary> /// 获取停止成功的消息 /// </summary> /// <param name="sender"></param> /// <returns></returns> public static GetNoticeEventArgs GetStopSucceed(Severs sender) { GetNoticeEventArgs e = GetSeversSystem(sender); e.content = "StopSucceed"; e.message = "服务端成功关闭~放假啦~滚去休息啦~"; return e; }
public static GetNoticeEventArgs GetSendToAll(Severs sender, string msg) { GetNoticeEventArgs e = new GetNoticeEventArgs(sender, Attribute.SendToAll); e.commucateMessage = msg; int num = sender.users.Count; e.content = string.Format("SendToAll,{0},{1}", num, msg); e.message = string.Format("向所有客户端(共{0}个)广播:\r\n{1}", num, msg); return e; }
public User(TcpClient client, Severs owner, int bufferSize = 1024) { this.client = client; this.owner = owner; this.bufferSize = bufferSize; networkStream = client.GetStream(); //br = new BinaryReader(networkStream); //bw = new BinaryWriter(networkStream); buffer = new byte[bufferSize]; state = State.Connected; Notice(GetNoticeEventArgs.GetClientLogin(owner, this)); if (owner.isStopped == false) { //开始读取信息 networkStream.BeginRead(buffer, 0, bufferSize, ReadCallback, new Object()); } }
//以下为服务端非系统类型 public static GetNoticeEventArgs GetClientLogin(Severs sender,Severs.User connectUser) { GetNoticeEventArgs e = new GetNoticeEventArgs(sender, Attribute.ClientLogin); e.relatedUser = connectUser; EndPoint RemoteEndPoint=connectUser.client.Client.RemoteEndPoint; e.content = string.Format("ClientLogin,{0}", RemoteEndPoint); e.message = string.Format("哼哼~~有一个客户端姐姐连接啦。客户端信息:{0}", RemoteEndPoint); return e; }