Exemple #1
0
        public override async Task <ExitReply> ExitChatRoom(ExitRequest request, ServerCallContext context)
        {
            var message = await this.chatRoomService.UnRegister(request.Chatroom, request.Username);

            return(await new ExitReply {
                Message = message
            });
        }
Exemple #2
0
        public override void RemovePlayer(GamePeer peer, ExitRequest exitReq, SendParameters sendParameters)
        {
            BaccaratPlayer player = playerManager.GetPlayer(peer) as BaccaratPlayer;

            playersBetDic.Remove(player);
            seatsDic.Remove(player.seat);

            base.RemovePlayer(peer, exitReq, sendParameters);

            CheckAllBet();
        }
        public override void RemovePlayer(GamePeer peer, ExitRequest exitReq, SendParameters sendParameters)
        {
            BlackjackPlayer player = playerManager.GetPlayer(peer) as BlackjackPlayer;

            playerBetsDic.Remove(player);
            playerCards.Remove(player);
            seatsDic.Remove(player.seat);

            base.RemovePlayer(peer, exitReq, sendParameters);

            CheckAllBet(false);
        }
Exemple #4
0
        public void HandleExitOperation(GamePeer peer, OperationRequest operationRequest, SendParameters sendParameters)
        {
            var exitRequest = new ExitRequest(peer.Protocol, operationRequest);

            if (!peer.ValidateOperation(exitRequest, sendParameters))
            {
                return;
            }

            var room = FindPeerRoom(peer);

            if (room != null)
            {
                room.ExecutionFiber.Enqueue(() => room.Leave(peer));
            }
            peer.Leave();
        }
Exemple #5
0
        /// <summary>
        /// Set agent as free from current customer
        /// </summary>
        /// <param name="exitRequest">ExitRequest object</param>
        /// <returns></returns>
        public ExitResponse SetAgentFree(ExitRequest exitRequest)
        {
            ExitResponse exitResponse = new ExitResponse();
            var          userEntity   = _userRepository.GetAllConditional(x => x.Email == exitRequest.Email && x.IsAssigned == true);

            if (userEntity?.Any() ?? false)
            {
                UserEntity entity = new UserEntity()
                {
                    Email = userEntity.ToList().FirstOrDefault().Email,
                    //Id = userEntity.ToList().FirstOrDefault().Id,
                    AgentId    = userEntity.ToList().FirstOrDefault().AgentId,
                    UserType   = userEntity.ToList().FirstOrDefault().UserType,
                    IsAssigned = false
                };

                _userRepository.Update(entity);
                exitResponse.Email = "Success";
            }
            return(exitResponse);
        }
Exemple #6
0
        public virtual void RemovePlayer(GamePeer peer, ExitRequest exitReq, SendParameters sendParameters)
        {
            lock (syncRoot)
            {
                if (playerManager.HasPlayer(peer) == false)
                {
                    return; //already removed.
                }

                BroadcastMessageHandler -= peer.OnBroadcastMessage;
                peer.OnLeaveHandler     -= OnPeerLeave;

                PlayerLeaveEvent leaveEvent = new PlayerLeaveEvent();
                leaveEvent.Actor = playerManager.GetPlayer(peer).key.ID;

                EventData eventData = new EventData(EventCode.PlayerLeave, leaveEvent);
                BroadcastMessage(peer, eventData, sendParameters);

                playerManager.RemovePlayer(peer);
            }
        }
Exemple #7
0
 private void ButtonClick(object sender, RoutedEventArgs e)
 {
     try
     {
         if (sender.Equals(btn_Exit))
         {
             //this.DialogResult = true;
             //this.DialogResult = System.Windows.Forms.DialogResult.OK;
             string userID   = txt_UserID.Text;
             string password = password_box.Password;
             ExitRequest?.Invoke(this, new ExitRequestEventArgs(userID, password));
         }
         else if (sender.Equals(btn_Cancel))
         {
             CloseFormEvent?.Invoke(this, e);
         }
     }
     catch (Exception ex)
     {
         logger.Error(ex, "Exception");
     }
 }
 protected virtual void RaiseExitRequest()
 {
     ExitRequest?.Invoke(this, EventArgs.Empty);
 }
 public IActionResult ExitUser(ExitRequest exitRequest)
 {
     return(Ok(_exitService.SetAgentFree(exitRequest)));
 }
 public void OnExitRequest(EventArgs e) => ExitRequest?.Invoke(this, e);