示例#1
0
        public TelegramClient(INekoDatabase database, IConfig config)
        {
            db = database;
            var uri = new Uri("https://api.telegram.org/");

            uri = new Uri(uri, $"/bot{config.TelegramBotToken}");
            c   = new RestClient(uri);
        }
示例#2
0
        private static async Task <Image> GetRandomNekoThatHasNotBeenPostedYet(INekoDatabase database, NekosMoeClient client, bool nsfw)
        {
            while (true)
            {
                // TODO handle rate limiting
                var nekos = await client.GetRandomNekos(nsfw, 50);

                foreach (var neko in nekos.Images)
                {
                    if (await database.HasBeenPostedAsync(neko.Id))
                    {
                        continue;
                    }
                    return(neko);
                }
            }
        }