private void JoinTableHandler(JoinTableRequest request)
        {
            SessionResponse response = new SessionResponse(request);

            response.Email       = request.Email;
            response.IsConfirmed = true;
            SendMessage(response);
            OnAutoAcceptInvite(this);
        }
Ejemplo n.º 2
0
    private bool RejectIfNeeded(JoinTableRequest request)
    {
        var table = Server.Instance.GetNonFullTable();

        if (!table || table.isFull)
        {
            var message = JoinTableResponse.MakeReject("The table is already full.");
            agent.connection.Send(message);
            return(true);
        }

        return(false);
    }
Ejemplo n.º 3
0
    public void On(JoinTableRequest request)
    {
        if (request.originConnection != agent.connection)
        {
            return;
        }
        if (RejectIfNeeded(request))
        {
            return;
        }

        agent.connection.Send(JoinTableResponse.Accept);

        agent.table = Server.Instance.GetNonFullTable();
        agent.table.AddPlayer(agent);

        agent.fsm.ChangeState <ServerPlayerStateInTable>();
    }
Ejemplo n.º 4
0
        public async Task <JoinTableResponse> Join(String host, JoinTableRequest param)
        {
            IRequest request = new Models.Messages.RPCRequest()
            {
                Method = "BuyIn",
                Params = param
            };

            String endPoint = String.Format("{0}", host);

            String        json           = JsonConvert.SerializeObject(request);
            StringContent requestContent = new StringContent(json, Encoding.UTF8, "application/json");
            String        jsonResponse   = await PostAsync(requestContent, endPoint);

            JoinTableResponse response = JsonConvert.DeserializeObject <JoinTableResponse>(jsonResponse);

            return(response);
        }
Ejemplo n.º 5
0
        public void JoinTable(Guid tableId)
        {
            using (BitPoker.Repository.ITableRepository tableRepo = new BitPoker.Repository.LiteDB.TableRepository(@"poker.db"))
            {
                IRequest request = new RPCRequest();
                var      table   = tableRepo.Find(tableId);

                JoinTableRequest method = new JoinTableRequest()
                {
                };

                request.Method = request.GetType().Name;
                request.Params = request;

                //send
                String json = Newtonsoft.Json.JsonConvert.SerializeObject(request);
                Backend.SendRequest(request);
            }
        }
Ejemplo n.º 6
0
    internal (string id, long position) JoinTable(ClientInfo clientInfo)
    {
        Debug.Log($"{clientInfo.PlayerUsername} Calling ActionJoinTable");
        JoinTableRequest req = new JoinTableRequest
        {
            ClientInfo = clientInfo,
        };
        JoinTableResponse res;

        try
        {
            res = _client.JoinTable(req);
        }
        catch (RpcException ex)
        {
            Debug.Log(ex.ToString());
            throw;
        }

        return(res.TableID, res.Position);
    }
Ejemplo n.º 7
0
 public Task <JoinTableResponse> Join(string host, JoinTableRequest param)
 {
     throw new NotImplementedException();
 }