private static async Task WriteFulfillmentResponseAsync(FulfillmentResponse fulfillmentResponse, HttpContext httpContext) { var rawFulfillmentResponse = JsonConvert.SerializeObject(fulfillmentResponse); httpContext.Response.ContentType = "application/json"; await httpContext.Response.WriteAsync(rawFulfillmentResponse); }
public static FulfillmentResponse AssertOutgoingContextHasParameter( this FulfillmentResponse fulfillmentResponse, string contextName, string parameterName) { var context = fulfillmentResponse.GetContext(contextName); Assert.IsTrue(context.Parameters.ContainsKey(parameterName)); return(fulfillmentResponse); }
public static FulfillmentResponse AssertOutgoingContextHasLifespanOf( this FulfillmentResponse fulfillmentResponse, string contextName, int lifespan) { var context = fulfillmentResponse.GetContext(contextName); Assert.AreEqual(lifespan, context.Lifespan); return(fulfillmentResponse); }
private void LogResponse(FulfillmentRequest fulfillmentRequest, FulfillmentResponse fulfillmentResponse) { var actionName = fulfillmentRequest.ConversationResult.ActionName; var logTag = $"{actionName}:{fulfillmentRequest.Id}"; var serlializedResponse = ConvertToPrettyJson(fulfillmentResponse); _logger.LogInfo($"{logTag} Raw Response\n{serlializedResponse}"); }
public async Task <FulfillmentResponse> FulfillAsync(FulfillmentRequest fulfillmentRequest, IJobberClient jobberClient) { var response = new FulfillmentResponse { Speech = "Sorry, I'm not sure what you're asking for.", DisplayText = "Sorry, I'm not sure what you're asking for." }; return(await Task.FromResult(response)); }
public static void Run(FulfillmentResponse responsemessage, ICollector <string> errormessage, TraceWriter log) { try { log.Verbose($"C# trigger queue function processed a request. inputmessage={responsemessage}", "JE.RMS.Services.OnRewardsResponseRecieved"); #region Update Audit Fields //Update timestapm in Audit fields List <SqlParameter> AuditParam = new List <SqlParameter>(); AuditParam.Add(new SqlParameter("@RMSRewardID", responsemessage.RMSRewardID)); var RMSRewardID = MSSQLConnection.ExecuteStoredProcedure <string>(USPContstants.UpdateAuditFieldsInRewardsTrx, AuditParam); log.Verbose($"FulfillmentResponseTimestamp updated successfully. RMSRewardID={RMSRewardID[0]}", "JE.RMS.Services.OnRewardsResponseRecieved"); string RewardTrxStatus = "Fulfillment completed"; if (responsemessage.Status == "Fail") { RewardTrxStatus = "Error"; } List <SqlParameter> MessageLogParams = new List <SqlParameter>(); MessageLogParams.Add(new SqlParameter("@RMSRewardID", responsemessage.RMSRewardID)); MessageLogParams.Add(new SqlParameter("@MessageType", MessageType.RewardFulfillmentResponse.GetDescription())); MessageLogParams.Add(new SqlParameter("@IPAddress", responsemessage.ClientIP)); MessageLogParams.Add(new SqlParameter("@Message", JsonConvert.SerializeObject(responsemessage))); MessageLogParams.Add(new SqlParameter("@RewardsTrxID", null)); var ErrorMessageLogID = MSSQLConnection.ExecuteStoredProcedure <long>(USPContstants.SaveMessageLog, MessageLogParams); log.Verbose($"MessageLog stored successfully. MessageLogID={ErrorMessageLogID[0]}", "JE.RMS.Services.ProcessFulfillmentForEnergyEarth"); ////Call stored procedure to Save RewardTrxChangeLog List <SqlParameter> RewardTrxChangeLogParams = new List <SqlParameter>(); RewardTrxChangeLogParams.Add(new SqlParameter("@RMSRewardID", responsemessage.RMSRewardID)); RewardTrxChangeLogParams.Add(new SqlParameter("@RewardTrxStatus", RewardTrxStatus)); RewardTrxChangeLogParams.Add(new SqlParameter("@Comment", string.Empty)); RewardTrxChangeLogParams.Add(new SqlParameter("@RewardsTrxID", null)); var RewardTrxChangeLogID = MSSQLConnection.ExecuteStoredProcedure <long>(USPContstants.SaveRewardTrxChangeLog, RewardTrxChangeLogParams); log.Verbose($"RewardTrxChangeLog stored successfully. RewardTrxChangeLogID={RewardTrxChangeLogID[0]}", "JE.RMS.Services.OnRewardsResponseRecieved"); #endregion } catch (Exception ex) { log.Error($"Exception ={ex}", ex, "JE.RMS.Services.OnRewardsRequestRecieved"); errormessage.Add(JsonConvert.SerializeObject(ex).ToString()); } }
public static FulfillmentResponse AssertContainsOutgoingContext( this FulfillmentResponse fulfillmentResponse, string contextName) { Assert.IsTrue(fulfillmentResponse.ContextOut.Any(c => c.Name.ToLower() == contextName.ToLower())); return(fulfillmentResponse); }
public static FulfillmentResponse AssertResponseSpeech( this FulfillmentResponse fulfillmentResponse, string expectedResponseSpeech) { Assert.AreEqual(fulfillmentResponse.Speech, expectedResponseSpeech); return(fulfillmentResponse); }
public void WhenISubmitTheFulfillment() { SetupData(); _fulfillmentResponse = _warehouseFacade.FulfillOrder(_order.OrderId); }
private FulfillmentResponseBuilder() { _fulfillmentResponse = new FulfillmentResponse(); }