コード例 #1
0
        public async Task SetStoreItems(List <FutbolPlayer> players)
        {
            var items = new List <StoreItem> {
            };

            foreach (var player in players)
            {
                items.Add(new StoreItem
                {
                    ItemId = player.ID,
                    VirtualCurrencyPrices = new Dictionary <string, uint>()
                    {
                        { configuration.Currency, player.Price }
                    },
                    CustomData = JsonConvert.SerializeObject(player)
                });
            }

            var reqUpdateStoreItems = new UpdateStoreItemsRequest
            {
                CatalogVersion = configuration.CatalogName,
                Store          = items,
                StoreId        = configuration.StoreName
            };

            var result = await PlayFabAdminAPI.SetStoreItemsAsync(reqUpdateStoreItems);

            if (result.Error != null)
            {
                Console.WriteLine(result.Error.ErrorMessage);
            }
        }
コード例 #2
0
        private async Task <bool> Stores(string parsedFile, CancellationToken token)
        {
            var storesList = JsonWrapper.DeserializeObject <List <StoreWrapper> >(parsedFile);

            foreach (var eachStore in storesList)
            {
                if (IsCancellationRequest(token))
                {
                    return(false);
                }
                LogToFile("\tUploading: " + eachStore.StoreId);

                var request = new UpdateStoreItemsRequest
                {
                    CatalogVersion = defaultCatalog,
                    StoreId        = eachStore.StoreId,
                    Store          = eachStore.Store,
                    MarketingData  = eachStore.MarketingData
                };

                var updateStoresTask = await PlayFabAdminAPI.SetStoreItemsAsync(request);

                if (updateStoresTask.Error != null)
                {
                    OutputPlayFabError("\t\tStore Upload: " + eachStore.StoreId, updateStoresTask.Error);
                }
                else
                {
                    LogToFile("\t\tStore: " + eachStore.StoreId + " Uploaded. ");
                }
            }
            return(true);
        }
コード例 #3
0
        /// <summary>
        /// Updates an existing virtual item store with new or modified items
        /// </summary>
        public static void UpdateStoreItems(UpdateStoreItemsRequest request, Action <UpdateStoreItemsResult> resultCallback, Action <PlayFabError> errorCallback, object customData = null)
        {
            if (PlayFabSettings.DeveloperSecretKey == null)
            {
                throw new Exception("Must have PlayFabSettings.DeveloperSecretKey set to call this method");
            }

            PlayFabHttp.MakeApiCall("/Admin/UpdateStoreItems", request, AuthType.DevSecretKey, resultCallback, errorCallback, customData);
        }
コード例 #4
0
        public async Task <bool> UploadStores()
        {
            if (string.IsNullOrEmpty(storesPath))
            {
                LogToFile("Stores File Path is Null ");
                return(true);
            }

            LogToFile("Uploading Stores...");
            var parsedFile = ParseFile(storesPath);

            var storesList = JsonWrapper.DeserializeObject <List <StoreWrapper> >(parsedFile);

            foreach (var eachStore in storesList)
            {
                LogToFile("\tUploading: " + eachStore.StoreId);

                var request = new UpdateStoreItemsRequest
                {
                    CatalogVersion = defaultCatalog,
                    StoreId        = eachStore.StoreId,
                    Store          = eachStore.Store,
                    MarketingData  = eachStore.MarketingData
                };
                if (token.IsCancellationRequested)
                {
                    return(true);
                }

                var updateStoresTask = await PlayFabAdminAPI.SetStoreItemsAsync(request);

                //updateStoresTask.Wait();

                if (updateStoresTask.Error != null)
                {
                    OutputPlayFabError("\t\tStore Upload: " + eachStore.StoreId, updateStoresTask.Error);
                }
                else
                {
                    LogToFile("\t\tStore: " + eachStore.StoreId + " Uploaded. ", ConsoleColor.Green);
                }
            }

            return(true);
        }
コード例 #5
0
        private static bool UploadStores(string filePath, string catalogName)
        {
            if (string.IsNullOrEmpty(filePath))
            {
                return(false);
            }

            LogToFile("Uploading Stores...");
            var parsedFile = ParseFile(filePath);

            var storesList = JsonWrapper.DeserializeObject <List <StoreWrapper> >(parsedFile);

            foreach (var eachStore in storesList)
            {
                LogToFile("\tUploading: " + eachStore.StoreId);

                var request = new UpdateStoreItemsRequest
                {
                    CatalogVersion = catalogName,
                    StoreId        = eachStore.StoreId,
                    Store          = eachStore.Store,
                    MarketingData  = eachStore.MarketingData
                };

                var updateStoresTask = PlayFabAdminAPI.SetStoreItemsAsync(request);
                updateStoresTask.Wait();

                if (updateStoresTask.Result.Error != null)
                {
                    OutputPlayFabError("\t\tStore Upload: " + eachStore.StoreId, updateStoresTask.Result.Error);
                }
                else
                {
                    LogToFile("\t\tStore: " + eachStore.StoreId + " Uploaded. ", ConsoleColor.Green);
                }
            }
            return(true);
        }
コード例 #6
0
ファイル: Program.cs プロジェクト: zeya-anwar/UnicornBattle
        private static bool UploadStores()
        {
            if (string.IsNullOrEmpty(storesPath))
            {
                return(false);
            }

            LogToFile("Uploading Stores...");
            var parsedFile = ParseFile(storesPath);

            var storesDict = JsonWrapper.DeserializeObject <Dictionary <string, List <StoreItem> > >(parsedFile);

            foreach (var kvp in storesDict)
            {
                LogToFile(string.Format("\tUploading: {0}", kvp.Key));

                var request = new UpdateStoreItemsRequest()
                {
                    CatalogVersion = defaultCatalog,
                    StoreId        = kvp.Key,
                    Store          = kvp.Value
                };

                var updateStoresTask = PlayFabAdminAPI.SetStoreItemsAsync(request);
                updateStoresTask.Wait();

                if (updateStoresTask.Result.Error != null)
                {
                    OutputPlayFabError("\t\tStore Upload: " + kvp.Key, updateStoresTask.Result.Error);
                }
                else
                {
                    LogToFile(string.Format("\t\tStore: {0} Uploaded.", kvp.Key), ConsoleColor.Green);
                }
            }
            return(true);
        }