Skip to content

/AWS1/IF_IOW=>CREATEFUOTATASK()

About CreateFuotaTask

Creates a FUOTA task.

Method Signature

METHODS /AWS1/IF_IOW~CREATEFUOTATASK
  IMPORTING
    !IV_NAME TYPE /AWS1/IOWFUOTATASKNAME OPTIONAL
    !IV_DESCRIPTION TYPE /AWS1/IOWDESCRIPTION OPTIONAL
    !IV_CLIENTREQUESTTOKEN TYPE /AWS1/IOWCLIENTREQUESTTOKEN OPTIONAL
    !IO_LORAWAN TYPE REF TO /AWS1/CL_IOWLORAWANFUOTATASK OPTIONAL
    !IV_FIRMWAREUPDATEIMAGE TYPE /AWS1/IOWFIRMWAREUPDATEIMAGE OPTIONAL
    !IV_FIRMWAREUPDATEROLE TYPE /AWS1/IOWFIRMWAREUPDATEROLE OPTIONAL
    !IT_TAGS TYPE /AWS1/CL_IOWTAG=>TT_TAGLIST OPTIONAL
    !IV_REDUNDANCYPERCENT TYPE /AWS1/IOWREDUNDANCYPERCENT OPTIONAL
    !IV_FRAGMENTSIZEBYTES TYPE /AWS1/IOWFRAGMENTSIZEBYTES OPTIONAL
    !IV_FRAGMENTINTERVALMS TYPE /AWS1/IOWFRAGMENTINTERVALMS OPTIONAL
    !IV_DESCRIPTOR TYPE /AWS1/IOWFILEDESCRIPTOR OPTIONAL
  RETURNING
    VALUE(OO_OUTPUT) TYPE REF TO /aws1/cl_iowcreatefuotataskrsp
  RAISING
    /AWS1/CX_IOWACCESSDENIEDEX
    /AWS1/CX_IOWCONFLICTEXCEPTION
    /AWS1/CX_IOWINTERNALSERVEREX
    /AWS1/CX_IOWRESOURCENOTFOUNDEX
    /AWS1/CX_IOWTHROTTLINGEX
    /AWS1/CX_IOWVALIDATIONEX
    /AWS1/CX_IOWCLIENTEXC
    /AWS1/CX_IOWSERVEREXC
    /AWS1/CX_RT_TECHNICAL_GENERIC
    /AWS1/CX_RT_SERVICE_GENERIC.

IMPORTING

Required arguments:

iv_firmwareupdateimage TYPE /AWS1/IOWFIRMWAREUPDATEIMAGE /AWS1/IOWFIRMWAREUPDATEIMAGE

The S3 URI points to a firmware update image that is to be used with a FUOTA task.

iv_firmwareupdaterole TYPE /AWS1/IOWFIRMWAREUPDATEROLE /AWS1/IOWFIRMWAREUPDATEROLE

The firmware update role that is to be used with a FUOTA task.

Optional arguments:

iv_name TYPE /AWS1/IOWFUOTATASKNAME /AWS1/IOWFUOTATASKNAME

The name of a FUOTA task.

iv_description TYPE /AWS1/IOWDESCRIPTION /AWS1/IOWDESCRIPTION

The description of the new resource.

iv_clientrequesttoken TYPE /AWS1/IOWCLIENTREQUESTTOKEN /AWS1/IOWCLIENTREQUESTTOKEN

Each resource must have a unique client request token. The client token is used to implement idempotency. It ensures that the request completes no more than one time. If you retry a request with the same token and the same parameters, the request will complete successfully. However, if you try to create a new resource using the same token but different parameters, an HTTP 409 conflict occurs. If you omit this value, AWS SDKs will automatically generate a unique client request. For more information about idempotency, see Ensuring idempotency in Amazon EC2 API requests.

io_lorawan TYPE REF TO /AWS1/CL_IOWLORAWANFUOTATASK /AWS1/CL_IOWLORAWANFUOTATASK

The LoRaWAN information used with a FUOTA task.

it_tags TYPE /AWS1/CL_IOWTAG=>TT_TAGLIST TT_TAGLIST

The tag to attach to the specified resource. Tags are metadata that you can use to manage a resource.

iv_redundancypercent TYPE /AWS1/IOWREDUNDANCYPERCENT /AWS1/IOWREDUNDANCYPERCENT

The percentage of the added fragments that are redundant. For example, if the size of the firmware image file is 100 bytes and the fragment size is 10 bytes, with RedundancyPercent set to 50(%), the final number of encoded fragments is (100 / 10) + (100 / 10 * 50%) = 15.

iv_fragmentsizebytes TYPE /AWS1/IOWFRAGMENTSIZEBYTES /AWS1/IOWFRAGMENTSIZEBYTES

The size of each fragment in bytes. This parameter is supported only for FUOTA tasks with multicast groups.

iv_fragmentintervalms TYPE /AWS1/IOWFRAGMENTINTERVALMS /AWS1/IOWFRAGMENTINTERVALMS

The interval for sending fragments in milliseconds, rounded to the nearest second.

This interval only determines the timing for when the Cloud sends down the fragments to yor device. There can be a delay for when your device will receive these fragments. This delay depends on the device's class and the communication delay with the cloud.

iv_descriptor TYPE /AWS1/IOWFILEDESCRIPTOR /AWS1/IOWFILEDESCRIPTOR

The descriptor is the metadata about the file that is transferred to the device using FUOTA, such as the software version. It is a binary field encoded in base64.

RETURNING

oo_output TYPE REF TO /aws1/cl_iowcreatefuotataskrsp /AWS1/CL_IOWCREATEFUOTATASKRSP

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->createfuotatask(
  io_lorawan = new /aws1/cl_iowlorawanfuotatask( |string| )
  it_tags = VALUE /aws1/cl_iowtag=>tt_taglist(
    (
      new /aws1/cl_iowtag(
        iv_key = |string|
        iv_value = |string|
      )
    )
  )
  iv_clientrequesttoken = |string|
  iv_description = |string|
  iv_descriptor = |string|
  iv_firmwareupdateimage = |string|
  iv_firmwareupdaterole = |string|
  iv_fragmentintervalms = 123
  iv_fragmentsizebytes = 123
  iv_name = |string|
  iv_redundancypercent = 123
).

This is an example of reading all possible response values

lo_result = lo_result.
IF lo_result IS NOT INITIAL.
  lv_fuotataskarn = lo_result->get_arn( ).
  lv_fuotataskid = lo_result->get_id( ).
ENDIF.