Skip to content

API for AWS IoT Jobs Data Plane

ABAP Package /AWS1/API_IOJ_IMPL
ABAP SDK "TLA" IOJ
ABAP Interface /AWS1/IF_IOJ

The "TLA" is a Three Letter Abbreviation that appears in ABAP class names, data dictionary objects and other ABAP objects throughout the AWS SDK for SAP ABAP. The TLA for AWS IoT Jobs Data Plane is IOJ. This TLA helps squeeze ABAP objects into the 30-character length limit of the ABAP data dictionary.

Installation

To install the AWS SDK for SAP ABAP, import the Core transport, along with the transport for the IoT Jobs Data Plane module and other API modules you are interested in. A few modules are included in the Core transport itself. For more information, see the Developer Guide guide.

About The Service

IoT Jobs is a service that allows you to define a set of jobs — remote operations that are sent to and executed on one or more devices connected to Amazon Web Services IoT Core. For example, you can define a job that instructs a set of devices to download and install application or firmware updates, reboot, rotate certificates, or perform remote troubleshooting operations.

Find the endpoint address for actions in the IoT jobs data plane by running this CLI command:

aws iot describe-endpoint --endpoint-type iot:Jobs

The service name used by Amazon Web Services Signature Version 4 to sign requests is: iot-jobs-data.

To create a job, you make a job document which is a description of the remote operations to be performed, and you specify a list of targets that should perform the operations. The targets can be individual things, thing groups or both.

IoT Jobs sends a message to inform the targets that a job is available. The target starts the execution of the job by downloading the job document, performing the operations it specifies, and reporting its progress to Amazon Web Services IoT Core. The Jobs service provides commands to track the progress of a job on a specific target and for all the targets of the job

Using the SDK

In your code, create a client using the SDK module for AWS IoT Jobs Data Plane, which is created with factory method /AWS1/CL_IOJ_FACTORY=>create(). In this example we will assume you have configured an SDK profile in transaction /AWS1/IMG called ZFINANCE.

DATA(go_session)   = /aws1/cl_rt_session_aws=>create( 'ZFINANCE' ).
DATA(go_ioj)       = /aws1/cl_ioj_factory=>create( go_session ).

Your variable go_ioj is an instance of /AWS1/IF_IOJ, and all of the operations in the AWS IoT Jobs Data Plane service are accessed by calling methods in /AWS1/IF_IOJ.

API Operations

For an overview of ABAP method calls corresponding to API operations in AWS IoT Jobs Data Plane, see the Operation List.

Factory Method

/AWS1/CL_IOJ_FACTORY=>create( )

Creates an object of type /AWS1/IF_IOJ.

IMPORTING

Optional arguments:

IV_PROTOCOL TYPE /AWS1/RT_PROTOCOL /AWS1/RT_PROTOCOL

IO_SESSION TYPE REF TO /AWS1/CL_RT_SESSION_BASE /AWS1/CL_RT_SESSION_BASE

IV_REGION TYPE /AWS1/RT_REGION_ID /AWS1/RT_REGION_ID

IV_CUSTOM_ENDPOINT TYPE /AWS1/RT_ENDPOINT /AWS1/RT_ENDPOINT

RETURNING

OO_CLIENT TYPE REF TO /AWS1/IF_IOJ /AWS1/IF_IOJ

/AWS1/IF_IOJ represents the ABAP client for the IoT Jobs Data Plane service, representing each operation as a method call. For more information see the API Page page.

Configuring Programmatically

DATA(lo_config) = DATA(go_ioj)->get_config( ).

lo_config is a variable of type /AWS1/CL_IOJ_CONFIG. See the documentation for /AWS1/CL_IOJ_CONFIG for details on the settings that can be configured.