Skip to content

/AWS1/IF_PP2=>UPDATERCSAGENT()

About UpdateRcsAgent

Updates the configuration of an existing RCS agent. You can update the opt-out list, deletion protection, two-way messaging settings, and self-managed opt-outs configuration.

Method Signature

METHODS /AWS1/IF_PP2~UPDATERCSAGENT
  IMPORTING
    !IV_RCSAGENTID TYPE /AWS1/PP2RCSAGENTIDORARN OPTIONAL
    !IV_DELETIONPROTECTIONENABLED TYPE /AWS1/PP2BOOLEAN OPTIONAL
    !IV_OPTOUTLISTNAME TYPE /AWS1/PP2OPTOUTLISTNAMEORARN OPTIONAL
    !IV_SELFMANAGEDOPTOUTSENABLED TYPE /AWS1/PP2BOOLEAN OPTIONAL
    !IV_TWOWAYCHANNELARN TYPE /AWS1/PP2TWOWAYCHANNELARN OPTIONAL
    !IV_TWOWAYCHANNELROLE TYPE /AWS1/PP2IAMROLEARN OPTIONAL
    !IV_TWOWAYENABLED TYPE /AWS1/PP2BOOLEAN OPTIONAL
    !IV_TWOWAYMEDIAS3BUCKETNAME TYPE /AWS1/PP2TWOWAYMEDS3BKTNAMOR00 OPTIONAL
    !IV_TWOWAYMEDIAS3KEYPREFIX TYPE /AWS1/PP2TWOWAYMEDIAS3KEYPREF OPTIONAL
    !IV_TWOWAYMEDIAS3ROLE TYPE /AWS1/PP2IAMROLEARNORUNSET OPTIONAL
    !IT_TWOWAYRCSEVENTSENABLED TYPE /AWS1/CL_PP2RCSEVENTTYPELIST_W=>TT_RCSEVENTTYPELIST OPTIONAL
  RETURNING
    VALUE(OO_OUTPUT) TYPE REF TO /aws1/cl_pp2updatercsagentrslt
  RAISING
    /AWS1/CX_PP2ACCESSDENIEDEX
    /AWS1/CX_PP2CONFLICTEXCEPTION
    /AWS1/CX_PP2INTERNALSERVEREX
    /AWS1/CX_PP2RESOURCENOTFOUNDEX
    /AWS1/CX_PP2THROTTLINGEX
    /AWS1/CX_PP2VALIDATIONEX
    /AWS1/CX_PP2CLIENTEXC
    /AWS1/CX_PP2SERVEREXC
    /AWS1/CX_RT_TECHNICAL_GENERIC
    /AWS1/CX_RT_SERVICE_GENERIC.

IMPORTING

Required arguments:

iv_rcsagentid TYPE /AWS1/PP2RCSAGENTIDORARN /AWS1/PP2RCSAGENTIDORARN

The unique identifier of the RCS agent to update. You can use either the RcsAgentId or RcsAgentArn.

Optional arguments:

iv_deletionprotectionenabled TYPE /AWS1/PP2BOOLEAN /AWS1/PP2BOOLEAN

By default this is set to false. When set to true the RCS agent can't be deleted.

iv_optoutlistname TYPE /AWS1/PP2OPTOUTLISTNAMEORARN /AWS1/PP2OPTOUTLISTNAMEORARN

The OptOutList to associate with the RCS agent. Valid values are either OptOutListName or OptOutListArn.

iv_selfmanagedoptoutsenabled TYPE /AWS1/PP2BOOLEAN /AWS1/PP2BOOLEAN

By default this is set to false. When set to true you're responsible for responding to HELP and STOP requests. You're also responsible for tracking and honoring opt-out requests.

iv_twowaychannelarn TYPE /AWS1/PP2TWOWAYCHANNELARN /AWS1/PP2TWOWAYCHANNELARN

The Amazon Resource Name (ARN) of the two way channel.

iv_twowaychannelrole TYPE /AWS1/PP2IAMROLEARN /AWS1/PP2IAMROLEARN

An optional IAM Role Arn for a service to assume, to be able to post inbound SMS messages.

iv_twowayenabled TYPE /AWS1/PP2BOOLEAN /AWS1/PP2BOOLEAN

By default this is set to false. When set to true you can receive incoming text messages from your end recipients.

iv_twowaymedias3bucketname TYPE /AWS1/PP2TWOWAYMEDS3BKTNAMOR00 /AWS1/PP2TWOWAYMEDS3BKTNAMOR00

The name of the S3 bucket where inbound RCS media files are stored. Two-way messaging must be enabled on the agent. To remove the media configuration, pass the sentinel value UNSET_RCS_MEDIA_CONFIGURATION for both this field and TwoWayMediaS3Role.

iv_twowaymedias3keyprefix TYPE /AWS1/PP2TWOWAYMEDIAS3KEYPREF /AWS1/PP2TWOWAYMEDIAS3KEYPREF

The key prefix used for inbound RCS media objects in the S3 bucket.

iv_twowaymedias3role TYPE /AWS1/PP2IAMROLEARNORUNSET /AWS1/PP2IAMROLEARNORUNSET

The ARN of the IAM role used to write inbound RCS media files to the S3 bucket. The role must have s3:PutObject permission on the bucket and a trust policy allowing sms-voice.amazonaws.com to assume it. To remove the media configuration, pass the sentinel value UNSET_RCS_MEDIA_CONFIGURATION for both this field and TwoWayMediaS3BucketName.

it_twowayrcseventsenabled TYPE /AWS1/CL_PP2RCSEVENTTYPELIST_W=>TT_RCSEVENTTYPELIST TT_RCSEVENTTYPELIST

The list of RCS event types to enable for two-way messaging. Pass an empty list to disable all event types. The special value ALL enables all current and future event types and must be the sole element if used.

RETURNING

oo_output TYPE REF TO /aws1/cl_pp2updatercsagentrslt /AWS1/CL_PP2UPDATERCSAGENTRSLT

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->updatercsagent(
  it_twowayrcseventsenabled = VALUE /aws1/cl_pp2rcseventtypelist_w=>tt_rcseventtypelist(
    ( new /aws1/cl_pp2rcseventtypelist_w( |string| ) )
  )
  iv_deletionprotectionenabled = ABAP_TRUE
  iv_optoutlistname = |string|
  iv_rcsagentid = |string|
  iv_selfmanagedoptoutsenabled = ABAP_TRUE
  iv_twowaychannelarn = |string|
  iv_twowaychannelrole = |string|
  iv_twowayenabled = ABAP_TRUE
  iv_twowaymedias3bucketname = |string|
  iv_twowaymedias3keyprefix = |string|
  iv_twowaymedias3role = |string|
).

This is an example of reading all possible response values

lo_result = lo_result.
IF lo_result IS NOT INITIAL.
  lv_string = lo_result->get_rcsagentarn( ).
  lv_string = lo_result->get_rcsagentid( ).
  lv_rcsagentstatus = lo_result->get_status( ).
  lv_timestamp = lo_result->get_createdtimestamp( ).
  lv_primitiveboolean = lo_result->get_deletionprotectionenbd( ).
  lv_optoutlistname = lo_result->get_optoutlistname( ).
  lv_primitiveboolean = lo_result->get_selfmanagedoptoutsenbd( ).
  lv_twowaychannelarn = lo_result->get_twowaychannelarn( ).
  lv_iamrolearn = lo_result->get_twowaychannelrole( ).
  lv_primitiveboolean = lo_result->get_twowayenabled( ).
  lv_twowaymedias3bucketname = lo_result->get_twowaymedias3bucketname( ).
  lv_twowaymedias3keyprefix = lo_result->get_twowaymedias3keyprefix( ).
  lv_iamrolearn = lo_result->get_twowaymedias3role( ).
  LOOP AT lo_result->get_twowayrcseventsenabled( ) into lo_row.
    lo_row_1 = lo_row.
    IF lo_row_1 IS NOT INITIAL.
      lv_rcseventtype = lo_row_1->get_value( ).
    ENDIF.
  ENDLOOP.
ENDIF.