public static async Task <HttpResponseMessage> Run([HttpTrigger(AuthorizationLevel.Function, "get", "post", Route = null)] HttpRequestMessage req, TraceWriter log) { log.Info("C# HTTP trigger function [GetTempHumidity] processed a request."); using (var analytic = new AnalyticService(new RequestTelemetry { Name = nameof(GetTempHumidity) })) { try { var kvps = req.GetQueryNameValuePairs(); var tempHumidity = CosmosDataService.Instance("TempHumidityCollection").GetTempHumidityModel(); if (tempHumidity.Count == 0) { return(req.CreateErrorResponse(HttpStatusCode.NoContent, "No results found.")); } return(req.CreateResponse(HttpStatusCode.OK, tempHumidity)); } catch (Exception e) { // track exceptions that occur analytic.TrackException(e); return(req.CreateErrorResponse(HttpStatusCode.BadRequest, e.Message, e)); } } }
public static void Run([ServiceBusTrigger(Keys.ServiceBus.EndGameBusName)] BrokeredMessage message, TraceWriter log) { using (var analytic = new AnalyticService(new RequestTelemetry { Name = nameof(EndGame) })) { try { var gameId = (string)message.Properties["gameId"]; using (var client = new CosmosDataService()) { var game = client.GetItemAsync <Game>(gameId).Result; var http = new HttpClient(); var url = $"https://huntapp.azurewebsites.net/api/SaveGame"; dynamic payload = new JObject(); payload.action = GameUpdateAction.EndGame; payload.game = JObject.FromObject(game); payload.arguments = null; var json = JsonConvert.SerializeObject(payload); var content = new StringContent(json); var response = http.PostAsync(url, content).Result; } } catch (Exception e) { analytic.TrackException(e); } } }