public async Task GetAnswerAsync([Remainder] string question) { var answer = await _wolframService.GetWolframAnswerAsync(question); if (!(bool)answer.success || answer.pods.Count < 1) { var message = "No results."; if (answer.tips != null) { var node = answer.tips.Count == null ? answer.tips : answer.tips[0]; message += $" {(string) node.text}"; } if (answer.didyoumeans != null) { var node = answer.didyoumeans.Count == null ? answer.didyoumeans : answer.didyoumeans[0]; message += $" Did you mean \"{(string) node.val}\"?"; } await ReplyAsync(message); return; } var query = (string)answer.pods[0].subpods[0].plaintext; var explanation = (string)answer.pods[1].subpods[0].plaintext; var embed = new EmbedBuilder() .AddField(query, explanation) .WithColor(BotSettings.Instance.EmbeddedColor) .Build(); await ReplyAsync(string.Empty, embed : embed); }
public async Task GetAnswerAsync([Remainder] string question) { var answer = await _wolframService.GetWolframAnswerAsync(question); if (answer == null) { await ReplyAsync("No answer found."); return; } var inputPod = answer.Pods[0]; var resultPod = answer.Pods[1]; var embed = new EmbedBuilder() .AddField(inputPod.Subpods.FirstOrDefault().PlainText, resultPod.Subpods.FirstOrDefault().PlainText) .WithColor(BotSettings.Instance.EmbeddedColor) .Build(); await ReplyAsync(string.Empty, embed : embed); }