-
Notifications
You must be signed in to change notification settings - Fork 0
Home
Welcome to the Fifa-UltimateTeam-Console wiki!
Each call can throw FifaSessionException when session expired or somebody logged at same time
You can provide proxy address/user/pass null if you dont use proxy. FileStorage is file where client will save cookie/session. PersonaIndex you can use values between 0 to 4 if have multiple persona on same account.
throw ArgumentException when data provide on init are invalid
throw FifaConfigException when fifa are wrong
throw FifaInternalServerException When there is issue with EA server
Task<FifaPlatform> Loggin(string username, string password, ITwoFactorCodeProvider twoFactorCodeProvider, string proxyAddress, string proxyUser, string proxyPass, string fileStorage, byte personaIndex = 0);
Use it only when you need to force logout like when throw funcaptcha like in example provide it
void LogOut()
Must be call it after Loggin to get account data. If funcaptcha detected will throw FifaSessionExceptionCaptcha, then you must solve it before you can continue
throw FifaSessionExceptionCaptcha when request to solve funcaptcha
Task<FifaUserResponse> GetUserInfo();
Must be call it after GetUserInfo will return live message on startup
Task<FifaLiveMessageResponse> GetLiveMessage()
Must be call it after GetUserInfo and return active message to take care on startup, usually reward
Task<FifaActiveMessages> GetActiveMessage()
Must be call it when there is Live message, provide message Id
Task<bool> CloseLiveMessage(uint Id)
Must be call it when there is Active message, provide message Id
Task<bool> GetActiveMessage(uint Id)
Call it only when FifaSessionException throw
void ReSession()
Usually you dont need to call it cause other calls return this value
void GetCredits()
Return Items in Unassigned List, rember to cache results for 5 minutes
Task<FifaUnassignedItemsResponse> GetUnassignedItems()
Return Items in TradePile , rember to cache results for 5 minutes
Task<FifaTradeResponse> GetTradePile()
Return Items in WatchList, rember to cache results for 5 minutes
Task<FifaWatchResponse> GetWatchList()
Return Players variants like inform from assetId, results will be add by it self on InvDb, rember to save it for next time
Task<List<FifaItem>> RequestPlayerVariants(uint baseId)
Return Price range from itemId, must call it if missing min/max price range before list new item on trade pile
Task<FifaPriceLimitsResponse> PriceLimitsByItemId(uint baseId)
Return Items/Players searched in market with parameter provide it *SearchParameters, examples in project
throw FifaStuckException when too much search request, temp ban for search
Task<FifaWatchResponse> Search(FifaSearchParameters searchParameters)
Relist All item in Trade Pile
throw FifaStuckException when too much trade action request, temp ban for tradepile
Task RelistTradePile()
Relist All item in Trade Pile
throw FifaStuckException when too much trade action request, temp ban for tradepile
Task RemoveSoldFromTradePile()
Remove specific outbid items/players from Watch List
throw FifaStuckException when too much trade action request, temp ban for tradepile
Task<bool> RemoveOutBidFromWatchlist(IEnumerable<FifaAuctionBase> auctionInfo)
List a specific item/player or relist expired with new parameters
throw FifaStuckException when too much trade action request, temp ban for tradepile
throw FifaLogicException when trade pile is full
Task<FifaProcessTradeResponse> ListItem(FifaTradeOrder order)
Put a Bid/Bin on specific auction, Bin is when bidAmount equal Bin Price
throw FifaStuckException when too much bid/bin request, temp ban for bid/bin
throw FifaPermissionDeniedException when somebody put bid/bin higest than your and auction is not refreshed
throw FifaLogicException when not enought coins, unassigned more than 5
Task<FifaWatchResponse> PlaceBid(FifaAuctionRestricted auctionInfo, uint bidAmount)
Get Auction Status for Search / Watchlist results not use for TradePile, max 20 items input, when something is outbid rember to call GetCredits(). Usually you need to create a list of items to update by default EA will call each sec if expire in less 30 secs, each 5 sec if expire under 60 sec, each 2 minutes if expire under 10 minutes, other each 10 minutes
Task<FifaAuctionsStatusResponse> GetAuctionsStatusInfo(IEnumerable<long> tradeIds)
Quicksell items/players
Task<FifaQuickSellResponse> QuickSell(long ItemId)
Move item to Trade Pile, tradeId not required if moving from unassigned then put 0
throw FifaLogicException when tradepile is full
Task<FifaSendItemToResponse> SendItemToTradePile(long itemId, long tradeId)
Move item to Club
throw FifaLogicException when destination is full/Duplicate Players
Task<FifaSendItemToResponse> SendItemToClub(long itemId)
Use delegate to solve funcaptcha, then all process will be run on server side, require Proxy to work (will use proxy provided on loggin function) require captchaKey
Task<bool> FuncaptchaProxySolver(string captchaKey)
Use external Solver, require captchaKey, EaPk/EaBlob must required with GetCaptchaKey(), easyMode mean get less imgs to solve. Check example on project
Task<string> FuncaptchaSolver(string captchaKey, string EaPk, string EaBlob, bool easyMode = true)
There are multiple functions on FutClient not covered here, self explain, some complex operation show on project example
Must Call it to init Library, you can get UserKey and userSecret using FutUiManager (Included in Library)
void Init(ILogger logger, Guid userKey, string userSecret)
Unload all Instance loaded
void UnloadAllInstances()
Inv Db for internal operation, rember to setup after startup. Use GenInvItems/GenInvPlayers methods to create it first time, then we suggest to save on file then just load it.
Dictionary<uint, FifaInvBase> InvDb
Add Players on Db provide it, Players are from EA db that include base players and legends. Unfortunately not include players inform, must be add by your self. You can iterate all base players with one fifa client and ask players variant
void GenInvPlayers(Dictionary<uint, FifaInvBase> invDb)
Add Inv Items on Db provide it, Items supported are Contract, Fitness, PlayerTraining and Healt
void GenInvItems(Dictionary<uint, FifaInvBase> invDb)
Add on actual InvDb a Player normal/inform and update RareType and ClubId (cause missing info from GenInvPlayers). Auto call by RequestPlayerVariants on instance
FifaInvPlayer GetInvPlayerFromItem(FifaItemBase fifaItem)
Return Inv Nations, Key:Id Value:Nation name.
Dictionary<uint, string> InvNations
Return Inv Clubs, Key:Id Value:Clubs name.
Dictionary<uint, string> InvClubs
Return Inv Leagues, Key:Id Value:Leagues name.
Dictionary<uint, string> InvLeagues
Create a new fifa client instance
IFutClient CreateNewInstance(ILogger logger)
Check if current library version support last fifa code, library auto check it when init and each time one client loggin
bool IsFifaSupported(ILogger logger)
Try to get Futbin Price, after many calls futbin can lock your IP, to avoid it you can use proxy or reduce number of call
throw UnauthorizedAccessException when futbin locked your local Ip
throw ArgumentException when player data missing on InvDb or not found on Futbin Site
Task<FutBinPriceResponse> GetFutBinPlayerPrice(uint playerId, HttpClient client)
Try to get Futwiz Price
throw ArgumentException when player data missing on InvDb or not found on Futwiz Site
Task<FutWizPriceResponse> GetFutWizlayerPrice(uint playerId, HttpClient client)
There are multiple functions on FutManager library not covered here, self explain