/AWS1/IF_LM2=>CREATEBOTALIAS()¶
About CreateBotAlias¶
Creates an alias for the specified version of a bot. Use an alias to enable you to change the version of a bot without updating applications that use the bot.
For example, you can create an alias called "PROD" that your applications use to call the Amazon Lex bot.
Method Signature¶
METHODS /AWS1/IF_LM2~CREATEBOTALIAS
IMPORTING
!IV_BOTALIASNAME TYPE /AWS1/LM2NAME OPTIONAL
!IV_DESCRIPTION TYPE /AWS1/LM2DESCRIPTION OPTIONAL
!IV_BOTVERSION TYPE /AWS1/LM2NUMERICALBOTVERSION OPTIONAL
!IT_BOTALIASLOCALESETTINGS TYPE /AWS1/CL_LM2BOTALIASLOCALESTGS=>TT_BOTALIASLOCALESETTINGSMAP OPTIONAL
!IO_CONVERSATIONLOGSETTINGS TYPE REF TO /AWS1/CL_LM2CONVERSATIONLOGS00 OPTIONAL
!IO_SENTIMENTANALYSISSETTINGS TYPE REF TO /AWS1/CL_LM2SENTIMENTALYSTGS OPTIONAL
!IV_BOTID TYPE /AWS1/LM2ID OPTIONAL
!IT_TAGS TYPE /AWS1/CL_LM2TAGMAP_W=>TT_TAGMAP OPTIONAL
RETURNING
VALUE(OO_OUTPUT) TYPE REF TO /aws1/cl_lm2createbotaliasrsp
RAISING
/AWS1/CX_LM2CONFLICTEXCEPTION
/AWS1/CX_LM2INTERNALSERVEREX
/AWS1/CX_LM2PRECONDFAILEDEX
/AWS1/CX_LM2SERVICEQUOTAEXCDEX
/AWS1/CX_LM2THROTTLINGEX
/AWS1/CX_LM2VALIDATIONEX
/AWS1/CX_LM2CLIENTEXC
/AWS1/CX_LM2SERVEREXC
/AWS1/CX_RT_TECHNICAL_GENERIC
/AWS1/CX_RT_SERVICE_GENERIC.
IMPORTING¶
Required arguments:¶
iv_botaliasname TYPE /AWS1/LM2NAME /AWS1/LM2NAME¶
The alias to create. The name must be unique for the bot.
iv_botid TYPE /AWS1/LM2ID /AWS1/LM2ID¶
The unique identifier of the bot that the alias applies to.
Optional arguments:¶
iv_description TYPE /AWS1/LM2DESCRIPTION /AWS1/LM2DESCRIPTION¶
A description of the alias. Use this description to help identify the alias.
iv_botversion TYPE /AWS1/LM2NUMERICALBOTVERSION /AWS1/LM2NUMERICALBOTVERSION¶
The version of the bot that this alias points to. You can use the UpdateBotAlias operation to change the bot version associated with the alias.
it_botaliaslocalesettings TYPE /AWS1/CL_LM2BOTALIASLOCALESTGS=>TT_BOTALIASLOCALESETTINGSMAP TT_BOTALIASLOCALESETTINGSMAP¶
Maps configuration information to a specific locale. You can use this parameter to specify a specific Lambda function to run different functions in different locales.
io_conversationlogsettings TYPE REF TO /AWS1/CL_LM2CONVERSATIONLOGS00 /AWS1/CL_LM2CONVERSATIONLOGS00¶
Specifies whether Amazon Lex logs text and audio for a conversation with the bot. When you enable conversation logs, text logs store text input, transcripts of audio input, and associated metadata in Amazon CloudWatch Logs. Audio logs store audio input in Amazon S3.
io_sentimentanalysissettings TYPE REF TO /AWS1/CL_LM2SENTIMENTALYSTGS /AWS1/CL_LM2SENTIMENTALYSTGS¶
Determines whether Amazon Lex will use Amazon Comprehend to detect the sentiment of user utterances.
it_tags TYPE /AWS1/CL_LM2TAGMAP_W=>TT_TAGMAP TT_TAGMAP¶
A list of tags to add to the bot alias. You can only add tags when you create an alias, you can't use the
UpdateBotAliasoperation to update the tags on a bot alias. To update tags, use theTagResourceoperation.
RETURNING¶
oo_output TYPE REF TO /aws1/cl_lm2createbotaliasrsp /AWS1/CL_LM2CREATEBOTALIASRSP¶
Examples¶
Syntax Example¶
This is an example of the syntax for calling the method. It includes every possible argument and initializes every possible value. The data provided is not necessarily semantically accurate (for example the value "string" may be provided for something that is intended to be an instance ID, or in some cases two arguments may be mutually exclusive). The syntax shows the ABAP syntax for creating the various data structures.
DATA(lo_result) = lo_client->createbotalias(
io_conversationlogsettings = new /aws1/cl_lm2conversationlogs00(
it_audiologsettings = VALUE /aws1/cl_lm2audiologsetting=>tt_audiologsettingslist(
(
new /aws1/cl_lm2audiologsetting(
io_destination = new /aws1/cl_lm2audiologdst(
io_s3bucket = new /aws1/cl_lm2s3bucketlogdst(
iv_kmskeyarn = |string|
iv_logprefix = |string|
iv_s3bucketarn = |string|
)
)
iv_enabled = ABAP_TRUE
iv_selectiveloggingenabled = ABAP_TRUE
)
)
)
it_textlogsettings = VALUE /aws1/cl_lm2textlogsetting=>tt_textlogsettingslist(
(
new /aws1/cl_lm2textlogsetting(
io_destination = new /aws1/cl_lm2textlogdestination(
io_cloudwatch = new /aws1/cl_lm2cloudwatchloggrl00(
iv_cloudwatchloggrouparn = |string|
iv_logprefix = |string|
)
)
iv_enabled = ABAP_TRUE
iv_selectiveloggingenabled = ABAP_TRUE
)
)
)
)
io_sentimentanalysissettings = new /aws1/cl_lm2sentimentalystgs( ABAP_TRUE )
it_botaliaslocalesettings = VALUE /aws1/cl_lm2botaliaslocalestgs=>tt_botaliaslocalesettingsmap(
(
VALUE /aws1/cl_lm2botaliaslocalestgs=>ts_botaliaslocalestgs00_maprow(
value = new /aws1/cl_lm2botaliaslocalestgs(
io_codehookspecification = new /aws1/cl_lm2codehookspec(
io_lambdacodehook = new /aws1/cl_lm2lambdacodehook(
iv_codehookinterfaceversion = |string|
iv_lambdaarn = |string|
)
)
iv_enabled = ABAP_TRUE
)
key = |string|
)
)
)
it_tags = VALUE /aws1/cl_lm2tagmap_w=>tt_tagmap(
(
VALUE /aws1/cl_lm2tagmap_w=>ts_tagmap_maprow(
key = |string|
value = new /aws1/cl_lm2tagmap_w( |string| )
)
)
)
iv_botaliasname = |string|
iv_botid = |string|
iv_botversion = |string|
iv_description = |string|
).
This is an example of reading all possible response values
lo_result = lo_result.
IF lo_result IS NOT INITIAL.
lv_botaliasid = lo_result->get_botaliasid( ).
lv_name = lo_result->get_botaliasname( ).
lv_description = lo_result->get_description( ).
lv_numericalbotversion = lo_result->get_botversion( ).
LOOP AT lo_result->get_botaliaslocalesettings( ) into ls_row.
lv_key = ls_row-key.
lo_value = ls_row-value.
IF lo_value IS NOT INITIAL.
lv_boolean = lo_value->get_enabled( ).
lo_codehookspecification = lo_value->get_codehookspecification( ).
IF lo_codehookspecification IS NOT INITIAL.
lo_lambdacodehook = lo_codehookspecification->get_lambdacodehook( ).
IF lo_lambdacodehook IS NOT INITIAL.
lv_lambdaarn = lo_lambdacodehook->get_lambdaarn( ).
lv_codehookinterfaceversio = lo_lambdacodehook->get_codehookinterfaceversion( ).
ENDIF.
ENDIF.
ENDIF.
ENDLOOP.
lo_conversationlogsettings = lo_result->get_conversationlogsettings( ).
IF lo_conversationlogsettings IS NOT INITIAL.
LOOP AT lo_conversationlogsettings->get_textlogsettings( ) into lo_row_1.
lo_row_2 = lo_row_1.
IF lo_row_2 IS NOT INITIAL.
lv_boolean = lo_row_2->get_enabled( ).
lo_textlogdestination = lo_row_2->get_destination( ).
IF lo_textlogdestination IS NOT INITIAL.
lo_cloudwatchloggrouplogde = lo_textlogdestination->get_cloudwatch( ).
IF lo_cloudwatchloggrouplogde IS NOT INITIAL.
lv_cloudwatchloggrouparn = lo_cloudwatchloggrouplogde->get_cloudwatchloggrouparn( ).
lv_logprefix = lo_cloudwatchloggrouplogde->get_logprefix( ).
ENDIF.
ENDIF.
lv_boxedboolean = lo_row_2->get_selectiveloggingenabled( ).
ENDIF.
ENDLOOP.
LOOP AT lo_conversationlogsettings->get_audiologsettings( ) into lo_row_3.
lo_row_4 = lo_row_3.
IF lo_row_4 IS NOT INITIAL.
lv_boolean = lo_row_4->get_enabled( ).
lo_audiologdestination = lo_row_4->get_destination( ).
IF lo_audiologdestination IS NOT INITIAL.
lo_s3bucketlogdestination = lo_audiologdestination->get_s3bucket( ).
IF lo_s3bucketlogdestination IS NOT INITIAL.
lv_kmskeyarn = lo_s3bucketlogdestination->get_kmskeyarn( ).
lv_s3bucketarn = lo_s3bucketlogdestination->get_s3bucketarn( ).
lv_logprefix = lo_s3bucketlogdestination->get_logprefix( ).
ENDIF.
ENDIF.
lv_boxedboolean = lo_row_4->get_selectiveloggingenabled( ).
ENDIF.
ENDLOOP.
ENDIF.
lo_sentimentanalysissettin = lo_result->get_sentimentalysettings( ).
IF lo_sentimentanalysissettin IS NOT INITIAL.
lv_boolean = lo_sentimentanalysissettin->get_detectsentiment( ).
ENDIF.
lv_botaliasstatus = lo_result->get_botaliasstatus( ).
lv_id = lo_result->get_botid( ).
lv_timestamp = lo_result->get_creationdatetime( ).
LOOP AT lo_result->get_tags( ) into ls_row_5.
lv_key_1 = ls_row_5-key.
lo_value_1 = ls_row_5-value.
IF lo_value_1 IS NOT INITIAL.
lv_tagvalue = lo_value_1->get_value( ).
ENDIF.
ENDLOOP.
ENDIF.