public async void TestFastLink() { IContainer container = InitContainer(typeof(YodleeService)); YodleeService yodleeService = container.GetInstance <YodleeService>(); YCobrandLoginRequest cobrandLoginRequest = new YCobrandLoginRequest().SetCobrandUserName(CoBrandUserName) .SetCobrandPassword(CoBrandPassword); YCobrandLoginResponse yCobrandLoginResponse = await yodleeService.LoginCobrand(cobrandLoginRequest); YUserLoginRequest userLoginRequest = new YUserLoginRequest() .SetCobrandSessionToken(yCobrandLoginResponse.cobrandConversationCredentials.sessionToken) .SetUserName(UserName) .SetUserPassword(UserPassword); YUserLoginResponse yUserLoginResponse = await yodleeService.LoginUser(userLoginRequest); YGetFastLinkTokenRequest getFastLinkTokenRequest = new YGetFastLinkTokenRequest() .SetCobrandSessionToken(yCobrandLoginResponse.cobrandConversationCredentials.sessionToken) .SetUserSessionToken(yUserLoginResponse.userContext.conversationCredentials.sessionToken); var yGetFastLinkTokenResponse = await yodleeService.GetFastLinkToken(getFastLinkTokenRequest); YFastLinkRequest yFastLinkRequest = new YFastLinkRequest() .SetFastLinkToken(yGetFastLinkTokenResponse.FastLinkToken) .SetUserSessionToken(yUserLoginResponse.userContext.conversationCredentials.sessionToken) .SetOptionalFastLinkSite(16441); string formHtml = yFastLinkRequest.GetFormHtml; string json = await yodleeService.MakeFastLink(yFastLinkRequest); int kk = 0; }
public async void TestSiteAccountsRequest() { IContainer container = InitContainer(typeof(YodleeService)); YodleeService yodleeService = container.GetInstance <YodleeService>(); YCobrandLoginRequest cobrandLoginRequest = new YCobrandLoginRequest().SetCobrandUserName(CoBrandUserName) .SetCobrandPassword(CoBrandPassword); YCobrandLoginResponse yCobrandLoginResponse = await yodleeService.LoginCobrand(cobrandLoginRequest); YUserLoginRequest userLoginRequest = new YUserLoginRequest() .SetCobrandSessionToken(yCobrandLoginResponse.cobrandConversationCredentials.sessionToken) .SetUserName(UserName) .SetUserPassword(UserPassword); YUserLoginResponse yUserLoginResponse = await yodleeService.LoginUser(userLoginRequest); YSiteAccountsRequest siteAccountsRequest = new YSiteAccountsRequest() .SetCobrandSessionToken(yCobrandLoginResponse.cobrandConversationCredentials.sessionToken) .SetUserSessionToken(yUserLoginResponse.userContext.conversationCredentials.sessionToken); YSiteAccountsResponse ySiteAccountsResponse = await yodleeService.GetSiteAccounts(siteAccountsRequest); Assert.AreEqual(ySiteAccountsResponse.AccountInfos.Count, 4); }
public async void TestTransactionRequest() { IContainer container = InitContainer(typeof(YodleeService)); YodleeService yodleeService = container.GetInstance <YodleeService>(); YCobrandLoginRequest cobrandLoginRequest = new YCobrandLoginRequest().SetCobrandUserName(CoBrandUserName) .SetCobrandPassword(CoBrandPassword); YCobrandLoginResponse yCobrandLoginResponse = await yodleeService.LoginCobrand(cobrandLoginRequest); YUserLoginRequest userLoginRequest = new YUserLoginRequest() .SetCobrandSessionToken(yCobrandLoginResponse.cobrandConversationCredentials.sessionToken) .SetUserName(UserName) .SetUserPassword(UserPassword); YUserLoginResponse yUserLoginResponse = await yodleeService.LoginUser(userLoginRequest); YTransactionsSearchRequest transactionsSearchRequest = new YTransactionsSearchRequest() .SetCoBrandToken(yCobrandLoginResponse.cobrandConversationCredentials.sessionToken) .SetUserSessionToken(yUserLoginResponse.userContext.conversationCredentials.sessionToken) .SetContainerType(EContainerType.bank) .SetPageSize(1, 10); YTransactionsSearchResponse t = await yodleeService.GetTransactions2(transactionsSearchRequest); YTransactionsSearchResponse tt = yodleeService.GetTransactions3(transactionsSearchRequest); YTransactionsSearchResponse transactions = yodleeService.GetTransactions(transactionsSearchRequest).First(); Assert.AreEqual(transactions.searchResult.Transactions.Count, 10); }
/// <summary> /// Handles the specified command. /// </summary> /// <param name="cmd">The command.</param> public async void Handle(YodleeGetTransactionsCommand cmd) { YCobrandLoginRequest cobrandLoginRequest = new YCobrandLoginRequest().SetCobrandUserName(cmd.CobrandUserName) .SetCobrandPassword(cmd.CobrandPassword); YCobrandLoginResponse yCobrandLoginResponse = await Yodlee.LoginCobrand(cobrandLoginRequest); YUserLoginRequest userLoginRequest = new YUserLoginRequest() .SetCobrandSessionToken(yCobrandLoginResponse.cobrandConversationCredentials.sessionToken) .SetUserName(cmd.UserName) .SetUserPassword(cmd.UserPassword); YUserLoginResponse yUserLoginResponse = await Yodlee.LoginUser(userLoginRequest); YTransactionsSearchRequest transactionsSearchRequest = new YTransactionsSearchRequest() .SetCoBrandToken(yCobrandLoginResponse.cobrandConversationCredentials.sessionToken) .SetUserSessionToken(yUserLoginResponse.userContext.conversationCredentials.sessionToken) .SetContainerType(EContainerType.bank); var lookup = cmd.AccountsNumbers.ToLookup(o => o); IEnumerable <YTransactionsSearchResponse> transactions = Yodlee.GetTransactions(transactionsSearchRequest); foreach (var transaction in transactions) { var currentTransation = transaction; SendReply(new InfoAccumulator(), cmd, reply => { reply.HitsCount = currentTransation.numberOfHits; reply.TotalTransactionsCount = currentTransation.countOfAllTransaction; reply.Transactions = currentTransation.searchResult.Transactions.Where(t => !lookup.Contains(t.account.itemAccountId)) .Select(ConvertToApiTransaction); reply.AccountNumbers = cmd.AccountsNumbers; }); } }
/// <summary> /// Handles a YodleeGetFastLinkCommand. /// </summary> /// <param name="cmd">The command.</param> public async void Handle(YodleeGetFastLinkCommand cmd) { YCobrandLoginRequest cobrandLoginRequest = new YCobrandLoginRequest().SetCobrandUserName(cmd.CobrandUserName) .SetCobrandPassword(cmd.CobrandPassword); YCobrandLoginResponse yCobrandLoginResponse = await Yodlee.LoginCobrand(cobrandLoginRequest); YUserLoginRequest userLoginRequest = new YUserLoginRequest() .SetCobrandSessionToken(yCobrandLoginResponse.cobrandConversationCredentials.sessionToken) .SetUserName(cmd.UserName) .SetUserPassword(cmd.UserPassword); YUserLoginResponse yUserLoginResponse = await Yodlee.LoginUser(userLoginRequest); YGetFastLinkTokenRequest getFastLinkTokenRequest = new YGetFastLinkTokenRequest() .SetCobrandSessionToken(yCobrandLoginResponse.cobrandConversationCredentials.sessionToken) .SetUserSessionToken(yUserLoginResponse.userContext.conversationCredentials.sessionToken); var yGetFastLinkTokenResponse = await Yodlee.GetFastLinkToken(getFastLinkTokenRequest); YFastLinkRequest yFastLinkRequest = new YFastLinkRequest() .SetFastLinkToken(yGetFastLinkTokenResponse.FastLinkToken) .SetUserSessionToken(yUserLoginResponse.userContext.conversationCredentials.sessionToken); if (cmd.ContentServiceId > 0) { yFastLinkRequest.SetOptionalFastLinkSite(cmd.SiteId); } string formHtml = yFastLinkRequest.GetFormHtml; string json = await Yodlee.MakeFastLink(yFastLinkRequest); SendReply(new InfoAccumulator(), cmd, reply => { reply.FastLinkUrl = json; reply.FormHtml = formHtml; }); }
/// <summary> /// Handles the specified command. /// </summary> /// <param name="cmd">The command.</param> public async void Handle(YodleeGetUserAccountsCommand cmd) { YCobrandLoginRequest cobrandLoginRequest = new YCobrandLoginRequest().SetCobrandUserName(cmd.CobrandUserName) .SetCobrandPassword(cmd.CobrandPassword); YCobrandLoginResponse yCobrandLoginResponse = await Yodlee.LoginCobrand(cobrandLoginRequest); YUserLoginRequest userLoginRequest = new YUserLoginRequest() .SetCobrandSessionToken(yCobrandLoginResponse.cobrandConversationCredentials.sessionToken) .SetUserName(cmd.UserName) .SetUserPassword(cmd.UserPassword); YUserLoginResponse yUserLoginResponse = await Yodlee.LoginUser(userLoginRequest); YSiteAccountsRequest siteAccountsRequest = new YSiteAccountsRequest() .SetCobrandSessionToken(yCobrandLoginResponse.cobrandConversationCredentials.sessionToken) .SetUserSessionToken(yUserLoginResponse.userContext.conversationCredentials.sessionToken); InfoAccumulator info = new InfoAccumulator(); YSiteAccountsResponse ySiteAccountsResponse = await Yodlee.GetSiteAccounts(siteAccountsRequest); var yodleeUserAccounts = ySiteAccountsResponse.AccountInfos.Select(TransformToApiAccount).ToList(); string json = await Yodlee.GetSiteAccountsAsJson(siteAccountsRequest); if (IsError(json)) { info.AddError("got error response:\n" + json); } SendReply(info, cmd, reply => { reply.CustomerId = cmd.CustomerId; reply.UserName = cmd.UserName; reply.UserPassword = cmd.UserPassword; reply.Accounts = yodleeUserAccounts; }); }