Example #1
0
        async private void Init()
        {
            //NakamaSessionManager.Instance.OnConnectionSuccess -= Init;

            ConfigurationOperationResponse res = await ConfigurationManager.ReadAsync();

            var output = JsonUtility.ToJson(res, true);

            MenuManager.Instance.HideTopMenu();
            //StartCoroutine(WaitCoroutine());

            //Debug.Log("YESYESYES: " + output);

            //var rpcid = "rc";
            //var pokemonInfo = await Client.RpcAsync(Session, rpcid, payload);
            //IApiRpc responsePayload = await client.RpcAsync(session, "merge_cards", payload);
            //ConfigurationOperationResponse response = Nakama.TinyJson.JsonParser.FromJson<ConfigurationOperationResponse>(responsePayload.Payload);
            //Debug.LogFormat("AAA Read objects: [{0}]", string.Join(",\n  ", response));

            /*
             * var result = await Client.ReadStorageObjectsAsync(Session, new StorageObjectId
             * {
             *  Collection = "configuration",
             *  Key = "rc",
             *  UserId = null
             * });
             * Debug.LogFormat("BBB Read objects: [{0}]", string.Join(",\n  ", result.Objects));
             */
        }
        public static async Task <ConfigurationOperationResponse> ReadAsync()
        {
            Client   client  = NakamaSessionManager.Instance.Client;
            ISession session = NakamaSessionManager.Instance.Session;

            var payload = "{\"PokemonName\": \"dragonite\"}";

            IApiRpc responsePayload = await client.RpcAsync(session, "remote_configuration", payload);

            ConfigurationOperationResponse response = Nakama.TinyJson.JsonParser.FromJson <ConfigurationOperationResponse>(responsePayload.Payload);

            return(response);

            /*
             * var pokemonInfo = await Client.RpcAsync(Session, rpcid, payload);
             */

            //IApiRpc responsePayload = await client.RpcAsync(session, "rc", payload);
            //CardOperationResponse response = Nakama.TinyJson.JsonParser.FromJson<CardOperationResponse>(responsePayload.Payload);

            //Task<IApiRpc> responsePayload = client.RpcAsync(session, rpcid, payload);
            //CardOperationResponse response = Nakama.TinyJson.JsonParser.FromJson<CardOperationResponse>(responsePayload.Payload);

            /*
             *
             * Dictionary<string, Dictionary<string, string>> cardPayload = new Dictionary<string, Dictionary<string, string>>
             * {
             * { "first", card1.Serialize() },
             * { "second", card2.Serialize() }
             * };
             * string payload = Nakama.TinyJson.JsonWriter.ToJson(cardPayload);
             *
             * IApiRpc responsePayload = await client.RpcAsync(session, "merge_cards", payload);
             * CardOperationResponse response = Nakama.TinyJson.JsonParser.FromJson<CardOperationResponse>(responsePayload.Payload);
             *
             * return response;
             */
        }