public async Task ShowGraphCandleIntent(IDialogContext context, IAwaitable <IMessageActivity> activity, LuisResult result) { var query = result.Entities.FirstOrDefault()?.Entity as string; if (query == null) { var errorResult = "Try something else, please."; await context.PostAsync(errorResult); context.Wait(this.MessageReceived); return; } var symbol = IntrinioApiService.GetTickerByName(query); var quotes = IntrinioApiService.SymbolDailyRequest(symbol.ticker); var graphPath = Graphics.GraphCreator.CreateChartCandleStick(quotes.data, 10); var replyMessage = context.MakeMessage(); replyMessage.Text = $"You rang master? Here you have the last 10 day candlestick graph for symbol {symbol.ticker}"; replyMessage.Attachments.Add(new Attachment { ContentUrl = graphPath, ContentType = "image/png", Name = "BinckBank Logo" }); await context.PostAsync(replyMessage); context.Wait(this.MessageReceived); }
public async Task CompanyInfoShortIntent(IDialogContext context, IAwaitable <IMessageActivity> activity, LuisResult result) { var query = result.Entities.FirstOrDefault()?.Entity as string; if (query == null) { var errorResult = "Try something else, please."; await context.PostAsync(errorResult); context.Wait(this.MessageReceived); return; } var symbol = IntrinioApiService.GetTickerByName(query); var info = IntrinioApiService.GetCompanyInfoByTicker(symbol.ticker); // Yesssssss master. The company is displayed as you requested. var replyMessage = context.MakeMessage(); replyMessage.Text = $"Yesssssss master. The company is displayed as you requested." + $"<br/>The company {info.name} is described as:<br/>{info.short_description}" + $"<br/>More can be found at {info.company_url}"; await context.PostAsync(replyMessage); context.Wait(this.MessageReceived); }
public async Task StockLastPriceIntent(IDialogContext context, IAwaitable <IMessageActivity> activity, LuisResult result) { var query = result.Entities.FirstOrDefault()?.Entity as string; if (query == null) { var errorResult = "I could not find anything. Did you make a typo?"; await context.PostAsync(errorResult); context.Wait(this.MessageReceived); return; } var symbol = IntrinioApiService.GetTickerByName(query); var rtn = IntrinioApiService.GetCloseQuoteForSymbol(symbol.ticker); var replyMessage = context.MakeMessage(); replyMessage.Text = $"I found some information. The last closing stock price is {rtn.adj_high} for symbol {symbol.ticker} on date {rtn.date.ToShortDateString()}"; await context.PostAsync(replyMessage); context.Wait(this.MessageReceived); }