private async Task TenorSearch(params string[] stringArray) { var tenor = new TenorClient(_tenorToken); tenor.SetContentFilter(TenorSharp.Enums.ContentFilter.medium); GifObject[] gifs = new GifObject[0]; var range = 10; while (range > 1) { try { gifs = tenor.Search(string.Join(" ", stringArray), range).GifResults; range = 0; } catch { range /= 2; } } if (gifs.Count() == 0) { gifs = tenor.Search("confused").GifResults; } var r = new Random(); var gif = gifs.ElementAt(r.Next(0, Math.Min(5, gifs.Count()))); await ReplyAsync(gif.Url.OriginalString); }
private SearchResults Map(GifObject obj) { return(new SearchResults { SearchTerm = obj.name, Results = obj.data.Select(data => Map(data)).ToList() }); }