/AWS1/IF_CHS=>LISTCHANNELMESSAGES()¶
About ListChannelMessages¶
List all the messages in a channel. Returns a paginated list of
ChannelMessages. By default, sorted by creation timestamp in descending
order.
Redacted messages appear in the results as empty, since they are only redacted, not deleted. Deleted messages do not appear in the results. This action always returns the latest version of an edited message.
Also, the x-amz-chime-bearer request header is mandatory. Use the
ARN of the AppInstanceUser or AppInstanceBot that makes the API call as the value in
the header.
Method Signature¶
METHODS /AWS1/IF_CHS~LISTCHANNELMESSAGES
IMPORTING
!IV_CHANNELARN TYPE /AWS1/CHSCHIMEARN OPTIONAL
!IV_SORTORDER TYPE /AWS1/CHSSORTORDER OPTIONAL
!IV_NOTBEFORE TYPE /AWS1/CHSTIMESTAMP OPTIONAL
!IV_NOTAFTER TYPE /AWS1/CHSTIMESTAMP OPTIONAL
!IV_MAXRESULTS TYPE /AWS1/CHSMAXRESULTS OPTIONAL
!IV_NEXTTOKEN TYPE /AWS1/CHSNEXTTOKEN OPTIONAL
!IV_CHIMEBEARER TYPE /AWS1/CHSCHIMEARN OPTIONAL
!IV_SUBCHANNELID TYPE /AWS1/CHSSUBCHANNELID OPTIONAL
RETURNING
VALUE(OO_OUTPUT) TYPE REF TO /aws1/cl_chslistchannelmsgsrsp
RAISING
/AWS1/CX_CHSBADREQUESTEX
/AWS1/CX_CHSFORBIDDENEXCEPTION
/AWS1/CX_CHSSERVICEFAILUREEX
/AWS1/CX_CHSSERVICEUNAVAILEX
/AWS1/CX_CHSTHROTTLEDCLIENTEX
/AWS1/CX_CHSUNAUTHDCLIENTEX
/AWS1/CX_CHSCLIENTEXC
/AWS1/CX_CHSSERVEREXC
/AWS1/CX_RT_TECHNICAL_GENERIC
/AWS1/CX_RT_SERVICE_GENERIC.
IMPORTING¶
Required arguments:¶
iv_channelarn TYPE /AWS1/CHSCHIMEARN /AWS1/CHSCHIMEARN¶
The ARN of the channel.
iv_chimebearer TYPE /AWS1/CHSCHIMEARN /AWS1/CHSCHIMEARN¶
The ARN of the
AppInstanceUserorAppInstanceBotthat makes the API call.
Optional arguments:¶
iv_sortorder TYPE /AWS1/CHSSORTORDER /AWS1/CHSSORTORDER¶
The order in which you want messages sorted. Default is Descending, based on time created.
iv_notbefore TYPE /AWS1/CHSTIMESTAMP /AWS1/CHSTIMESTAMP¶
The initial or starting time stamp for your requested messages.
iv_notafter TYPE /AWS1/CHSTIMESTAMP /AWS1/CHSTIMESTAMP¶
The final or ending time stamp for your requested messages.
iv_maxresults TYPE /AWS1/CHSMAXRESULTS /AWS1/CHSMAXRESULTS¶
The maximum number of messages that you want returned.
iv_nexttoken TYPE /AWS1/CHSNEXTTOKEN /AWS1/CHSNEXTTOKEN¶
The token passed by previous API calls until all requested messages are returned.
iv_subchannelid TYPE /AWS1/CHSSUBCHANNELID /AWS1/CHSSUBCHANNELID¶
The ID of the SubChannel in the request.
Only required when listing the messages in a SubChannel that the user belongs to.
RETURNING¶
oo_output TYPE REF TO /aws1/cl_chslistchannelmsgsrsp /AWS1/CL_CHSLISTCHANNELMSGSRSP¶
Domain /AWS1/RT_ACCOUNT_ID Primitive Type NUMC
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->listchannelmessages(
iv_channelarn = |string|
iv_chimebearer = |string|
iv_maxresults = 123
iv_nexttoken = |string|
iv_notafter = '20150101000000.0000000'
iv_notbefore = '20150101000000.0000000'
iv_sortorder = |string|
iv_subchannelid = |string|
).
This is an example of reading all possible response values
lo_result = lo_result.
IF lo_result IS NOT INITIAL.
lv_chimearn = lo_result->get_channelarn( ).
lv_nexttoken = lo_result->get_nexttoken( ).
LOOP AT lo_result->get_channelmessages( ) into lo_row.
lo_row_1 = lo_row.
IF lo_row_1 IS NOT INITIAL.
lv_messageid = lo_row_1->get_messageid( ).
lv_content = lo_row_1->get_content( ).
lv_metadata = lo_row_1->get_metadata( ).
lv_channelmessagetype = lo_row_1->get_type( ).
lv_timestamp = lo_row_1->get_createdtimestamp( ).
lv_timestamp = lo_row_1->get_lastupdatedtimestamp( ).
lv_timestamp = lo_row_1->get_lasteditedtimestamp( ).
lo_identity = lo_row_1->get_sender( ).
IF lo_identity IS NOT INITIAL.
lv_chimearn = lo_identity->get_arn( ).
lv_resourcename = lo_identity->get_name( ).
ENDIF.
lv_nonnullableboolean = lo_row_1->get_redacted( ).
lo_channelmessagestatusstr = lo_row_1->get_status( ).
IF lo_channelmessagestatusstr IS NOT INITIAL.
lv_channelmessagestatus = lo_channelmessagestatusstr->get_value( ).
lv_statusdetail = lo_channelmessagestatusstr->get_detail( ).
ENDIF.
LOOP AT lo_row_1->get_messageattributes( ) into ls_row_2.
lv_key = ls_row_2-key.
lo_value = ls_row_2-value.
IF lo_value IS NOT INITIAL.
LOOP AT lo_value->get_stringvalues( ) into lo_row_3.
lo_row_4 = lo_row_3.
IF lo_row_4 IS NOT INITIAL.
lv_messageattributestringv = lo_row_4->get_value( ).
ENDIF.
ENDLOOP.
ENDIF.
ENDLOOP.
lv_contenttype = lo_row_1->get_contenttype( ).
LOOP AT lo_row_1->get_target( ) into lo_row_5.
lo_row_6 = lo_row_5.
IF lo_row_6 IS NOT INITIAL.
lv_chimearn = lo_row_6->get_memberarn( ).
ENDIF.
ENDLOOP.
ENDIF.
ENDLOOP.
lv_subchannelid = lo_result->get_subchannelid( ).
ENDIF.