public static async Task Run([TimerTrigger("%PostGifsFunctionCron%")] TimerInfo myTimer, ILogger log) { var connectionString = Environment.GetEnvironmentVariable("TrendingGiphyBotConnectionString"); var botToken = Environment.GetEnvironmentVariable("BotToken"); var hourOffsetString = Environment.GetEnvironmentVariable("HourOffset"); var hourOffset = int.Parse(hourOffsetString); var now = DateTime.Now.AddHours(-hourOffset); var validMinutesString = Environment.GetEnvironmentVariable("ValidMinutes"); var validMinutes = validMinutesString.Split(',', options: StringSplitOptions.RemoveEmptyEntries).Select(int.Parse); var validHoursString = Environment.GetEnvironmentVariable("ValidHours"); var validHours = validHoursString.Split(',', options: StringSplitOptions.RemoveEmptyEntries).Select(int.Parse); var validHoursAsMinutes = validHours.Select(s => s * 60); var allValidMinutes = validMinutes.Concat(validHoursAsMinutes).ToList(); var giphyRandomEndpoint = Environment.GetEnvironmentVariable("GiphyRandomEndpoint"); var warningResponses = Environment.GetEnvironmentVariable("WarningResponses").Split(',', options: StringSplitOptions.RemoveEmptyEntries).ToList(); var logWrapper = new LoggerWrapper(log); using (var context = new TrendingGiphyBotContext(connectionString)) using (var giphyWrapper = new GiphyWrapper()) using (var discordWrapper = new DiscordWrapper(botToken)) { var gifPostingHelper = new GifPostingHelper(logWrapper, context, giphyWrapper, discordWrapper, warningResponses); var postGifsHelper = new PostGifsHelper(gifPostingHelper); await postGifsHelper.RunAsync(now, allValidMinutes, giphyRandomEndpoint); } }
public static async Task <IActionResult> Run([HttpTrigger(AuthorizationLevel.Function, "get", Route = "jobconfigs/{channelid:decimal}")] HttpRequest req, decimal channelId, ILogger log) { var connectionString = Environment.GetEnvironmentVariable("TrendingGiphyBotConnectionString"); var logWrapper = new LoggerWrapper(log); using (var context = new TrendingGiphyBotContext(connectionString)) { var getJobConfigHelper = new GetJobConfigHelper(logWrapper, context); return(await getJobConfigHelper.RunAsync(channelId)); } }
public static async Task <IActionResult> Run([HttpTrigger(AuthorizationLevel.Function, "get", Route = "prefixDictionary")] HttpRequest req, ILogger log) { var connectionString = Environment.GetEnvironmentVariable("TrendingGiphyBotConnectionString"); var logWrapper = new LoggerWrapper(log); using (var context = new TrendingGiphyBotContext(connectionString)) { var getPrefixDictionaryHelper = new GetPrefixDictionaryHelper(logWrapper, context); return(await getPrefixDictionaryHelper.RunAsync()); } }
public static async Task Run([TimerTrigger("%RefreshGifsFunctionCron%")] TimerInfo myTimer, ILogger log) { var connectionString = Environment.GetEnvironmentVariable("TrendingGiphyBotConnectionString"); var trendingEndpoint = Environment.GetEnvironmentVariable("GiphyTrendingEndpoint"); var logWrapper = new LoggerWrapper(log); using (var giphyWrapper = new GiphyWrapper()) using (var context = new TrendingGiphyBotContext(connectionString)) { var refreshGifsHelper = new RefreshGifsHelper(logWrapper, giphyWrapper, context); await refreshGifsHelper.RunAsync(trendingEndpoint); } }
public static async Task Run([TimerTrigger("%DeleteOldUrlHistoriesFunctionCron%")] TimerInfo myTimer, ILogger log) { var connectionString = Environment.GetEnvironmentVariable("TrendingGiphyBotConnectionString"); var urlHistoriesMaxDaysOldString = Environment.GetEnvironmentVariable("UrlHistoriesMaxDaysOld"); var urlHistoriesMaxDaysOld = int.Parse(urlHistoriesMaxDaysOldString); var oldestDate = DateTime.Now.AddDays(-urlHistoriesMaxDaysOld); var logWrapper = new LoggerWrapper(log); using (var context = new TrendingGiphyBotContext(connectionString)) { var deleteOldUrlHistoriesHelper = new DeleteOldUrlHistoriesHelper(logWrapper, context); await deleteOldUrlHistoriesHelper.RunAsync(oldestDate); } }