using System.Collections.Generic; using System.Runtime.Serialization; namespace Amazon.Lambda.LexV2Events { /// /// Contains information about the contexts that a user is using in a session. /// https://docs.aws.amazon.com/lexv2/latest/dg/API_runtime_ActiveContext.html /// [DataContract] public class LexV2ActiveContext { /// /// A list of contexts active for the request. A context can be activated when a previous intent is fulfilled, or by including the context in the request. /// [DataMember(Name = "contextAttributes", EmitDefaultValue = false)] [System.Text.Json.Serialization.JsonPropertyName("contextAttributes")] public IDictionary ContextAttributes { get; set; } /// /// The name of the context. /// [DataMember(Name = "name", EmitDefaultValue = false)] [System.Text.Json.Serialization.JsonPropertyName("name")] public string Name { get; set; } /// /// The number of turns that the context is active. You can specify up to 20 turns. Each request and response from the bot is a turn. /// [DataMember(Name = "timeToLive", EmitDefaultValue = false)] [System.Text.Json.Serialization.JsonPropertyName("timeToLive")] public ActiveContextTimeToLive TimeToLive { get; set; } /// /// The time that a context is active. You can specify the time to live in seconds or in conversation turns. /// https://docs.aws.amazon.com/lexv2/latest/dg/API_runtime_ActiveContextTimeToLive.html /// [DataContract] public class ActiveContextTimeToLive { /// /// The number of seconds that the context is active. You can specify between 5 and 86400 seconds (24 hours). /// [DataMember(Name = "timeToLiveInSeconds", EmitDefaultValue = false)] [System.Text.Json.Serialization.JsonPropertyName("timeToLiveInSeconds")] public int TimeToLiveInSeconds { get; set; } /// /// The number of turns that the context is active. You can specify up to 20 turns. Each request and response from the bot is a turn. /// [DataMember(Name = "turnsToLive", EmitDefaultValue = false)] [System.Text.Json.Serialization.JsonPropertyName("turnsToLive")] public int TurnsToLive { get; set; } } } }