public void SendFriendAddResponse(bool accept, FriendAddRequest request)
        {
            Debug.Log("SendFriendAddResponse");
            NetMessage message = new NetMessage();

            message.Response = new NetMessageResponse();
            message.Response.friendAddRes          = new FriendAddResponse();
            message.Response.friendAddRes.Result   = accept ? Result.Success : Result.Failed;
            message.Response.friendAddRes.Errormsg = accept ? "对方同意" : "对方决绝了请求";
            message.Response.friendAddRes.Request  = request;
            NetClient.Instance.SendMessage(message);
        }
        /// <summary>
        /// 收到添加好友请求
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="message"></param>
        private void OnFriendAddRequest(object sender, FriendAddRequest request)
        {
            var confirm = MessageBox.Show(string.Format("{0} 请求加你为好友", request.FromName), "好友请求", MessageBoxType.Confirm, "接受", "决绝");

            confirm.OnYes = () =>
            {
                this.SendFriendAddResponse(true, request);
            };
            confirm.OnNo = () =>
            {
                this.SendFriendAddResponse(false, request);
            };
        }
Example #3
0
        /// <summary>
        /// 收到好友请求消息
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="message"></param>
        private void OnFriendAddRequest(NetConnection <NetSession> sender, FriendAddRequest request)
        {
            Character character = sender.Session.Character;

            Log.InfoFormat("OnFriendAddRequest:FromID:{0} FromName:{1} ToID:{2} ToName:{3}", request.FromId, request.FromName, request.ToId, request.ToId);

            if (request.ToId == 0)
            {//如果没有传入ID则用用户名查找
                foreach (var cha in CharacterManager.Instance.Characters)
                {
                    if (cha.Value.Data.Name == request.ToName)
                    {
                        request.ToId = cha.Key;
                        break;
                    }
                }
            }
            NetConnection <NetSession> friend = null;

            if (request.ToId > 0)                                                //用ID查找
            {
                if (character.FriendManager.GetFriendInfo(request.ToId) != null) //是不是在好友列表里
                {
                    sender.Session.Response.friendAddRes          = new FriendAddResponse();
                    sender.Session.Response.friendAddRes.Result   = Result.Failed;
                    sender.Session.Response.friendAddRes.Errormsg = "已经是好友了";
                    sender.SendResponse();
                    return;
                }
                friend = SessionManager.Instance.GetSession(request.ToId);
                if (friend == null)//不存在或者不在线
                {
                    sender.Session.Response.friendAddRes          = new FriendAddResponse();
                    sender.Session.Response.friendAddRes.Result   = Result.Failed;
                    sender.Session.Response.friendAddRes.Errormsg = "好友不存在或不在线";
                    sender.SendResponse();
                    return;
                }

                Log.InfoFormat("ForwardRequst :FromId:{0} FromName:{1} ToId:{2} ToName:{3}", request.FromId, request.FromName, request.ToId, request.ToId);
                friend.Session.Response.friendAddReq = request;
                friend.SendResponse();
            }
        }
Example #4
0
 /// <summary>
 /// 添加好友:friend_add
 /// </summary>
 /// <param name="request"></param>
 /// <returns></returns>
 public async Task <FriendAddResult> FriendAddAsync(FriendAddRequest request)
 {
     return(await RequestAsync <FriendAddRequest, FriendAddResult>(ServiceName, "friend_add", request));
 }
 public async Task <FriendAddResult> FriendAddAsync([FromBody] FriendAddRequest request)
 {
     return(await _cloudImSnsClient.FriendAddAsync(request));
 }
        /// <inheritdoc/>
        public void HandlePacket(Player player, Span <byte> packet)
        {
            FriendAddRequest message = packet;

            this.addAction.AddFriend(player, message.FriendName);
        }
Example #7
0
 /// <summary>
 /// 批量添加好友
 /// </summary>
 /// <param name="request"></param>
 /// <returns></returns>
 public RequestResult FriendAdd(FriendAddRequest request)
 {
     return(RetString(request, FriendAddStr, ""));
 }
Example #8
0
 public virtual FriendAddResult FriendAdd(FriendAddRequest request)
 {
     return(Request <FriendAddResult>("sns", "friend_add", request));
 }