Esempio n. 1
0
        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);
        }
Esempio n. 2
0
 private SearchResults Map(GifObject obj)
 {
     return(new SearchResults {
         SearchTerm = obj.name,
         Results = obj.data.Select(data => Map(data)).ToList()
     });
 }