Interface CfnBot.IFulfillmentCodeHookSettingProperty
Determines if a Lambda function should be invoked for a specific intent.
Namespace: Amazon.CDK.AWS.Lex
Assembly: Amazon.CDK.AWS.Lex.dll
Syntax (csharp)
public interface IFulfillmentCodeHookSettingProperty
Syntax (vb)
Public Interface IFulfillmentCodeHookSettingProperty
Remarks
ExampleMetadata: fixture=_generated
Examples
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
using Amazon.CDK.AWS.Lex;
SlotValueOverrideProperty slotValueOverrideProperty_;
var fulfillmentCodeHookSettingProperty = new FulfillmentCodeHookSettingProperty {
Enabled = false,
// the properties below are optional
FulfillmentUpdatesSpecification = new FulfillmentUpdatesSpecificationProperty {
Active = false,
// the properties below are optional
StartResponse = new FulfillmentStartResponseSpecificationProperty {
DelayInSeconds = 123,
MessageGroups = new [] { new MessageGroupProperty {
Message = new MessageProperty {
CustomPayload = new CustomPayloadProperty {
Value = "value"
},
ImageResponseCard = new ImageResponseCardProperty {
Title = "title",
// the properties below are optional
Buttons = new [] { new ButtonProperty {
Text = "text",
Value = "value"
} },
ImageUrl = "imageUrl",
Subtitle = "subtitle"
},
PlainTextMessage = new PlainTextMessageProperty {
Value = "value"
},
SsmlMessage = new SSMLMessageProperty {
Value = "value"
}
},
// the properties below are optional
Variations = new [] { new MessageProperty {
CustomPayload = new CustomPayloadProperty {
Value = "value"
},
ImageResponseCard = new ImageResponseCardProperty {
Title = "title",
// the properties below are optional
Buttons = new [] { new ButtonProperty {
Text = "text",
Value = "value"
} },
ImageUrl = "imageUrl",
Subtitle = "subtitle"
},
PlainTextMessage = new PlainTextMessageProperty {
Value = "value"
},
SsmlMessage = new SSMLMessageProperty {
Value = "value"
}
} }
} },
// the properties below are optional
AllowInterrupt = false
},
TimeoutInSeconds = 123,
UpdateResponse = new FulfillmentUpdateResponseSpecificationProperty {
FrequencyInSeconds = 123,
MessageGroups = new [] { new MessageGroupProperty {
Message = new MessageProperty {
CustomPayload = new CustomPayloadProperty {
Value = "value"
},
ImageResponseCard = new ImageResponseCardProperty {
Title = "title",
// the properties below are optional
Buttons = new [] { new ButtonProperty {
Text = "text",
Value = "value"
} },
ImageUrl = "imageUrl",
Subtitle = "subtitle"
},
PlainTextMessage = new PlainTextMessageProperty {
Value = "value"
},
SsmlMessage = new SSMLMessageProperty {
Value = "value"
}
},
// the properties below are optional
Variations = new [] { new MessageProperty {
CustomPayload = new CustomPayloadProperty {
Value = "value"
},
ImageResponseCard = new ImageResponseCardProperty {
Title = "title",
// the properties below are optional
Buttons = new [] { new ButtonProperty {
Text = "text",
Value = "value"
} },
ImageUrl = "imageUrl",
Subtitle = "subtitle"
},
PlainTextMessage = new PlainTextMessageProperty {
Value = "value"
},
SsmlMessage = new SSMLMessageProperty {
Value = "value"
}
} }
} },
// the properties below are optional
AllowInterrupt = false
}
},
IsActive = false,
PostFulfillmentStatusSpecification = new PostFulfillmentStatusSpecificationProperty {
FailureConditional = new ConditionalSpecificationProperty {
ConditionalBranches = new [] { new ConditionalBranchProperty {
Condition = new ConditionProperty {
ExpressionString = "expressionString"
},
Name = "name",
NextStep = new DialogStateProperty {
DialogAction = new DialogActionProperty {
Type = "type",
// the properties below are optional
SlotToElicit = "slotToElicit",
SuppressNextMessage = false
},
Intent = new IntentOverrideProperty {
Name = "name",
Slots = new [] { new SlotValueOverrideMapProperty {
SlotName = "slotName",
SlotValueOverride = new SlotValueOverrideProperty {
Shape = "shape",
Value = new SlotValueProperty {
InterpretedValue = "interpretedValue"
},
Values = new [] { slotValueOverrideProperty_ }
}
} }
},
SessionAttributes = new [] { new SessionAttributeProperty {
Key = "key",
// the properties below are optional
Value = "value"
} }
},
// the properties below are optional
Response = new ResponseSpecificationProperty {
MessageGroupsList = new [] { new MessageGroupProperty {
Message = new MessageProperty {
CustomPayload = new CustomPayloadProperty {
Value = "value"
},
ImageResponseCard = new ImageResponseCardProperty {
Title = "title",
// the properties below are optional
Buttons = new [] { new ButtonProperty {
Text = "text",
Value = "value"
} },
ImageUrl = "imageUrl",
Subtitle = "subtitle"
},
PlainTextMessage = new PlainTextMessageProperty {
Value = "value"
},
SsmlMessage = new SSMLMessageProperty {
Value = "value"
}
},
// the properties below are optional
Variations = new [] { new MessageProperty {
CustomPayload = new CustomPayloadProperty {
Value = "value"
},
ImageResponseCard = new ImageResponseCardProperty {
Title = "title",
// the properties below are optional
Buttons = new [] { new ButtonProperty {
Text = "text",
Value = "value"
} },
ImageUrl = "imageUrl",
Subtitle = "subtitle"
},
PlainTextMessage = new PlainTextMessageProperty {
Value = "value"
},
SsmlMessage = new SSMLMessageProperty {
Value = "value"
}
} }
} },
// the properties below are optional
AllowInterrupt = false
}
} },
DefaultBranch = new DefaultConditionalBranchProperty {
NextStep = new DialogStateProperty {
DialogAction = new DialogActionProperty {
Type = "type",
// the properties below are optional
SlotToElicit = "slotToElicit",
SuppressNextMessage = false
},
Intent = new IntentOverrideProperty {
Name = "name",
Slots = new [] { new SlotValueOverrideMapProperty {
SlotName = "slotName",
SlotValueOverride = new SlotValueOverrideProperty {
Shape = "shape",
Value = new SlotValueProperty {
InterpretedValue = "interpretedValue"
},
Values = new [] { slotValueOverrideProperty_ }
}
} }
},
SessionAttributes = new [] { new SessionAttributeProperty {
Key = "key",
// the properties below are optional
Value = "value"
} }
},
Response = new ResponseSpecificationProperty {
MessageGroupsList = new [] { new MessageGroupProperty {
Message = new MessageProperty {
CustomPayload = new CustomPayloadProperty {
Value = "value"
},
ImageResponseCard = new ImageResponseCardProperty {
Title = "title",
// the properties below are optional
Buttons = new [] { new ButtonProperty {
Text = "text",
Value = "value"
} },
ImageUrl = "imageUrl",
Subtitle = "subtitle"
},
PlainTextMessage = new PlainTextMessageProperty {
Value = "value"
},
SsmlMessage = new SSMLMessageProperty {
Value = "value"
}
},
// the properties below are optional
Variations = new [] { new MessageProperty {
CustomPayload = new CustomPayloadProperty {
Value = "value"
},
ImageResponseCard = new ImageResponseCardProperty {
Title = "title",
// the properties below are optional
Buttons = new [] { new ButtonProperty {
Text = "text",
Value = "value"
} },
ImageUrl = "imageUrl",
Subtitle = "subtitle"
},
PlainTextMessage = new PlainTextMessageProperty {
Value = "value"
},
SsmlMessage = new SSMLMessageProperty {
Value = "value"
}
} }
} },
// the properties below are optional
AllowInterrupt = false
}
},
IsActive = false
},
FailureNextStep = new DialogStateProperty {
DialogAction = new DialogActionProperty {
Type = "type",
// the properties below are optional
SlotToElicit = "slotToElicit",
SuppressNextMessage = false
},
Intent = new IntentOverrideProperty {
Name = "name",
Slots = new [] { new SlotValueOverrideMapProperty {
SlotName = "slotName",
SlotValueOverride = new SlotValueOverrideProperty {
Shape = "shape",
Value = new SlotValueProperty {
InterpretedValue = "interpretedValue"
},
Values = new [] { slotValueOverrideProperty_ }
}
} }
},
SessionAttributes = new [] { new SessionAttributeProperty {
Key = "key",
// the properties below are optional
Value = "value"
} }
},
FailureResponse = new ResponseSpecificationProperty {
MessageGroupsList = new [] { new MessageGroupProperty {
Message = new MessageProperty {
CustomPayload = new CustomPayloadProperty {
Value = "value"
},
ImageResponseCard = new ImageResponseCardProperty {
Title = "title",
// the properties below are optional
Buttons = new [] { new ButtonProperty {
Text = "text",
Value = "value"
} },
ImageUrl = "imageUrl",
Subtitle = "subtitle"
},
PlainTextMessage = new PlainTextMessageProperty {
Value = "value"
},
SsmlMessage = new SSMLMessageProperty {
Value = "value"
}
},
// the properties below are optional
Variations = new [] { new MessageProperty {
CustomPayload = new CustomPayloadProperty {
Value = "value"
},
ImageResponseCard = new ImageResponseCardProperty {
Title = "title",
// the properties below are optional
Buttons = new [] { new ButtonProperty {
Text = "text",
Value = "value"
} },
ImageUrl = "imageUrl",
Subtitle = "subtitle"
},
PlainTextMessage = new PlainTextMessageProperty {
Value = "value"
},
SsmlMessage = new SSMLMessageProperty {
Value = "value"
}
} }
} },
// the properties below are optional
AllowInterrupt = false
},
SuccessConditional = new ConditionalSpecificationProperty {
ConditionalBranches = new [] { new ConditionalBranchProperty {
Condition = new ConditionProperty {
ExpressionString = "expressionString"
},
Name = "name",
NextStep = new DialogStateProperty {
DialogAction = new DialogActionProperty {
Type = "type",
// the properties below are optional
SlotToElicit = "slotToElicit",
SuppressNextMessage = false
},
Intent = new IntentOverrideProperty {
Name = "name",
Slots = new [] { new SlotValueOverrideMapProperty {
SlotName = "slotName",
SlotValueOverride = new SlotValueOverrideProperty {
Shape = "shape",
Value = new SlotValueProperty {
InterpretedValue = "interpretedValue"
},
Values = new [] { slotValueOverrideProperty_ }
}
} }
},
SessionAttributes = new [] { new SessionAttributeProperty {
Key = "key",
// the properties below are optional
Value = "value"
} }
},
// the properties below are optional
Response = new ResponseSpecificationProperty {
MessageGroupsList = new [] { new MessageGroupProperty {
Message = new MessageProperty {
CustomPayload = new CustomPayloadProperty {
Value = "value"
},
ImageResponseCard = new ImageResponseCardProperty {
Title = "title",
// the properties below are optional
Buttons = new [] { new ButtonProperty {
Text = "text",
Value = "value"
} },
ImageUrl = "imageUrl",
Subtitle = "subtitle"
},
PlainTextMessage = new PlainTextMessageProperty {
Value = "value"
},
SsmlMessage = new SSMLMessageProperty {
Value = "value"
}
},
// the properties below are optional
Variations = new [] { new MessageProperty {
CustomPayload = new CustomPayloadProperty {
Value = "value"
},
ImageResponseCard = new ImageResponseCardProperty {
Title = "title",
// the properties below are optional
Buttons = new [] { new ButtonProperty {
Text = "text",
Value = "value"
} },
ImageUrl = "imageUrl",
Subtitle = "subtitle"
},
PlainTextMessage = new PlainTextMessageProperty {
Value = "value"
},
SsmlMessage = new SSMLMessageProperty {
Value = "value"
}
} }
} },
// the properties below are optional
AllowInterrupt = false
}
} },
DefaultBranch = new DefaultConditionalBranchProperty {
NextStep = new DialogStateProperty {
DialogAction = new DialogActionProperty {
Type = "type",
// the properties below are optional
SlotToElicit = "slotToElicit",
SuppressNextMessage = false
},
Intent = new IntentOverrideProperty {
Name = "name",
Slots = new [] { new SlotValueOverrideMapProperty {
SlotName = "slotName",
SlotValueOverride = new SlotValueOverrideProperty {
Shape = "shape",
Value = new SlotValueProperty {
InterpretedValue = "interpretedValue"
},
Values = new [] { slotValueOverrideProperty_ }
}
} }
},
SessionAttributes = new [] { new SessionAttributeProperty {
Key = "key",
// the properties below are optional
Value = "value"
} }
},
Response = new ResponseSpecificationProperty {
MessageGroupsList = new [] { new MessageGroupProperty {
Message = new MessageProperty {
CustomPayload = new CustomPayloadProperty {
Value = "value"
},
ImageResponseCard = new ImageResponseCardProperty {
Title = "title",
// the properties below are optional
Buttons = new [] { new ButtonProperty {
Text = "text",
Value = "value"
} },
ImageUrl = "imageUrl",
Subtitle = "subtitle"
},
PlainTextMessage = new PlainTextMessageProperty {
Value = "value"
},
SsmlMessage = new SSMLMessageProperty {
Value = "value"
}
},
// the properties below are optional
Variations = new [] { new MessageProperty {
CustomPayload = new CustomPayloadProperty {
Value = "value"
},
ImageResponseCard = new ImageResponseCardProperty {
Title = "title",
// the properties below are optional
Buttons = new [] { new ButtonProperty {
Text = "text",
Value = "value"
} },
ImageUrl = "imageUrl",
Subtitle = "subtitle"
},
PlainTextMessage = new PlainTextMessageProperty {
Value = "value"
},
SsmlMessage = new SSMLMessageProperty {
Value = "value"
}
} }
} },
// the properties below are optional
AllowInterrupt = false
}
},
IsActive = false
},
SuccessNextStep = new DialogStateProperty {
DialogAction = new DialogActionProperty {
Type = "type",
// the properties below are optional
SlotToElicit = "slotToElicit",
SuppressNextMessage = false
},
Intent = new IntentOverrideProperty {
Name = "name",
Slots = new [] { new SlotValueOverrideMapProperty {
SlotName = "slotName",
SlotValueOverride = new SlotValueOverrideProperty {
Shape = "shape",
Value = new SlotValueProperty {
InterpretedValue = "interpretedValue"
},
Values = new [] { slotValueOverrideProperty_ }
}
} }
},
SessionAttributes = new [] { new SessionAttributeProperty {
Key = "key",
// the properties below are optional
Value = "value"
} }
},
SuccessResponse = new ResponseSpecificationProperty {
MessageGroupsList = new [] { new MessageGroupProperty {
Message = new MessageProperty {
CustomPayload = new CustomPayloadProperty {
Value = "value"
},
ImageResponseCard = new ImageResponseCardProperty {
Title = "title",
// the properties below are optional
Buttons = new [] { new ButtonProperty {
Text = "text",
Value = "value"
} },
ImageUrl = "imageUrl",
Subtitle = "subtitle"
},
PlainTextMessage = new PlainTextMessageProperty {
Value = "value"
},
SsmlMessage = new SSMLMessageProperty {
Value = "value"
}
},
// the properties below are optional
Variations = new [] { new MessageProperty {
CustomPayload = new CustomPayloadProperty {
Value = "value"
},
ImageResponseCard = new ImageResponseCardProperty {
Title = "title",
// the properties below are optional
Buttons = new [] { new ButtonProperty {
Text = "text",
Value = "value"
} },
ImageUrl = "imageUrl",
Subtitle = "subtitle"
},
PlainTextMessage = new PlainTextMessageProperty {
Value = "value"
},
SsmlMessage = new SSMLMessageProperty {
Value = "value"
}
} }
} },
// the properties below are optional
AllowInterrupt = false
},
TimeoutConditional = new ConditionalSpecificationProperty {
ConditionalBranches = new [] { new ConditionalBranchProperty {
Condition = new ConditionProperty {
ExpressionString = "expressionString"
},
Name = "name",
NextStep = new DialogStateProperty {
DialogAction = new DialogActionProperty {
Type = "type",
// the properties below are optional
SlotToElicit = "slotToElicit",
SuppressNextMessage = false
},
Intent = new IntentOverrideProperty {
Name = "name",
Slots = new [] { new SlotValueOverrideMapProperty {
SlotName = "slotName",
SlotValueOverride = new SlotValueOverrideProperty {
Shape = "shape",
Value = new SlotValueProperty {
InterpretedValue = "interpretedValue"
},
Values = new [] { slotValueOverrideProperty_ }
}
} }
},
SessionAttributes = new [] { new SessionAttributeProperty {
Key = "key",
// the properties below are optional
Value = "value"
} }
},
// the properties below are optional
Response = new ResponseSpecificationProperty {
MessageGroupsList = new [] { new MessageGroupProperty {
Message = new MessageProperty {
CustomPayload = new CustomPayloadProperty {
Value = "value"
},
ImageResponseCard = new ImageResponseCardProperty {
Title = "title",
// the properties below are optional
Buttons = new [] { new ButtonProperty {
Text = "text",
Value = "value"
} },
ImageUrl = "imageUrl",
Subtitle = "subtitle"
},
PlainTextMessage = new PlainTextMessageProperty {
Value = "value"
},
SsmlMessage = new SSMLMessageProperty {
Value = "value"
}
},
// the properties below are optional
Variations = new [] { new MessageProperty {
CustomPayload = new CustomPayloadProperty {
Value = "value"
},
ImageResponseCard = new ImageResponseCardProperty {
Title = "title",
// the properties below are optional
Buttons = new [] { new ButtonProperty {
Text = "text",
Value = "value"
} },
ImageUrl = "imageUrl",
Subtitle = "subtitle"
},
PlainTextMessage = new PlainTextMessageProperty {
Value = "value"
},
SsmlMessage = new SSMLMessageProperty {
Value = "value"
}
} }
} },
// the properties below are optional
AllowInterrupt = false
}
} },
DefaultBranch = new DefaultConditionalBranchProperty {
NextStep = new DialogStateProperty {
DialogAction = new DialogActionProperty {
Type = "type",
// the properties below are optional
SlotToElicit = "slotToElicit",
SuppressNextMessage = false
},
Intent = new IntentOverrideProperty {
Name = "name",
Slots = new [] { new SlotValueOverrideMapProperty {
SlotName = "slotName",
SlotValueOverride = new SlotValueOverrideProperty {
Shape = "shape",
Value = new SlotValueProperty {
InterpretedValue = "interpretedValue"
},
Values = new [] { slotValueOverrideProperty_ }
}
} }
},
SessionAttributes = new [] { new SessionAttributeProperty {
Key = "key",
// the properties below are optional
Value = "value"
} }
},
Response = new ResponseSpecificationProperty {
MessageGroupsList = new [] { new MessageGroupProperty {
Message = new MessageProperty {
CustomPayload = new CustomPayloadProperty {
Value = "value"
},
ImageResponseCard = new ImageResponseCardProperty {
Title = "title",
// the properties below are optional
Buttons = new [] { new ButtonProperty {
Text = "text",
Value = "value"
} },
ImageUrl = "imageUrl",
Subtitle = "subtitle"
},
PlainTextMessage = new PlainTextMessageProperty {
Value = "value"
},
SsmlMessage = new SSMLMessageProperty {
Value = "value"
}
},
// the properties below are optional
Variations = new [] { new MessageProperty {
CustomPayload = new CustomPayloadProperty {
Value = "value"
},
ImageResponseCard = new ImageResponseCardProperty {
Title = "title",
// the properties below are optional
Buttons = new [] { new ButtonProperty {
Text = "text",
Value = "value"
} },
ImageUrl = "imageUrl",
Subtitle = "subtitle"
},
PlainTextMessage = new PlainTextMessageProperty {
Value = "value"
},
SsmlMessage = new SSMLMessageProperty {
Value = "value"
}
} }
} },
// the properties below are optional
AllowInterrupt = false
}
},
IsActive = false
},
TimeoutNextStep = new DialogStateProperty {
DialogAction = new DialogActionProperty {
Type = "type",
// the properties below are optional
SlotToElicit = "slotToElicit",
SuppressNextMessage = false
},
Intent = new IntentOverrideProperty {
Name = "name",
Slots = new [] { new SlotValueOverrideMapProperty {
SlotName = "slotName",
SlotValueOverride = new SlotValueOverrideProperty {
Shape = "shape",
Value = new SlotValueProperty {
InterpretedValue = "interpretedValue"
},
Values = new [] { slotValueOverrideProperty_ }
}
} }
},
SessionAttributes = new [] { new SessionAttributeProperty {
Key = "key",
// the properties below are optional
Value = "value"
} }
},
TimeoutResponse = new ResponseSpecificationProperty {
MessageGroupsList = new [] { new MessageGroupProperty {
Message = new MessageProperty {
CustomPayload = new CustomPayloadProperty {
Value = "value"
},
ImageResponseCard = new ImageResponseCardProperty {
Title = "title",
// the properties below are optional
Buttons = new [] { new ButtonProperty {
Text = "text",
Value = "value"
} },
ImageUrl = "imageUrl",
Subtitle = "subtitle"
},
PlainTextMessage = new PlainTextMessageProperty {
Value = "value"
},
SsmlMessage = new SSMLMessageProperty {
Value = "value"
}
},
// the properties below are optional
Variations = new [] { new MessageProperty {
CustomPayload = new CustomPayloadProperty {
Value = "value"
},
ImageResponseCard = new ImageResponseCardProperty {
Title = "title",
// the properties below are optional
Buttons = new [] { new ButtonProperty {
Text = "text",
Value = "value"
} },
ImageUrl = "imageUrl",
Subtitle = "subtitle"
},
PlainTextMessage = new PlainTextMessageProperty {
Value = "value"
},
SsmlMessage = new SSMLMessageProperty {
Value = "value"
}
} }
} },
// the properties below are optional
AllowInterrupt = false
}
}
};
Synopsis
Properties
Enabled | Indicates whether a Lambda function should be invoked to fulfill a specific intent. |
FulfillmentUpdatesSpecification | Provides settings for update messages sent to the user for long-running Lambda fulfillment functions. |
IsActive | Determines whether the fulfillment code hook is used. |
PostFulfillmentStatusSpecification | Provides settings for messages sent to the user for after the Lambda fulfillment function completes. |
Properties
Enabled
Indicates whether a Lambda function should be invoked to fulfill a specific intent.
object Enabled { get; }
Property Value
System.Object
Remarks
FulfillmentUpdatesSpecification
Provides settings for update messages sent to the user for long-running Lambda fulfillment functions.
virtual object FulfillmentUpdatesSpecification { get; }
Property Value
System.Object
Remarks
Fulfillment updates can be used only with streaming conversations.
IsActive
Determines whether the fulfillment code hook is used.
virtual object IsActive { get; }
Property Value
System.Object
Remarks
When active
is false, the code hook doesn't run.
PostFulfillmentStatusSpecification
Provides settings for messages sent to the user for after the Lambda fulfillment function completes.
virtual object PostFulfillmentStatusSpecification { get; }
Property Value
System.Object
Remarks
Post-fulfillment messages can be sent for both streaming and non-streaming conversations.