/AWS1/IF_IOX=>CREATEMANAGEDTHING()¶
About CreateManagedThing¶
Creates a managed thing. A managed thing contains the device identifier, protocol supported, and capabilities of the device in a data model format defined by Managed integrations.
Method Signature¶
METHODS /AWS1/IF_IOX~CREATEMANAGEDTHING
IMPORTING
!IV_ROLE TYPE /AWS1/IOXROLE OPTIONAL
!IV_OWNER TYPE /AWS1/IOXOWNER OPTIONAL
!IV_CREDENTIALLOCKERID TYPE /AWS1/IOXCREDENTIALLOCKERID OPTIONAL
!IV_AUTHENTICATIONMATERIAL TYPE /AWS1/IOXAUTHMATERIALSTRING OPTIONAL
!IV_AUTHNTCTNMATERIALTYPE TYPE /AWS1/IOXAUTHMATERIALTYPE OPTIONAL
!IV_SERIALNUMBER TYPE /AWS1/IOXSERIALNUMBER OPTIONAL
!IV_BRAND TYPE /AWS1/IOXBRAND OPTIONAL
!IV_MODEL TYPE /AWS1/IOXMODEL OPTIONAL
!IV_NAME TYPE /AWS1/IOXNAME OPTIONAL
!IO_CAPABILITYREPORT TYPE REF TO /AWS1/CL_IOXCAPABILITYREPORT OPTIONAL
!IT_CAPABILITYSCHEMAS TYPE /AWS1/CL_IOXCAPABILITYSCHITEM=>TT_CAPABILITYSCHEMAS OPTIONAL
!IV_CAPABILITIES TYPE /AWS1/IOXCAPABILITIES OPTIONAL
!IV_CLIENTTOKEN TYPE /AWS1/IOXCLIENTTOKEN OPTIONAL
!IV_CLASSIFICATION TYPE /AWS1/IOXCLASSIFICATION OPTIONAL
!IT_TAGS TYPE /AWS1/CL_IOXTAGSMAP_W=>TT_TAGSMAP OPTIONAL
!IT_METADATA TYPE /AWS1/CL_IOXMETADATA_W=>TT_METADATA OPTIONAL
RETURNING
VALUE(OO_OUTPUT) TYPE REF TO /aws1/cl_ioxcremanagedthingrsp
RAISING
/AWS1/CX_IOXACCESSDENIEDEX
/AWS1/CX_IOXCONFLICTEXCEPTION
/AWS1/CX_IOXINTERNALSERVEREX
/AWS1/CX_IOXRESOURCENOTFOUNDEX
/AWS1/CX_IOXSERVICEUNAVAILEX
/AWS1/CX_IOXTHROTTLINGEX
/AWS1/CX_IOXUNAUTHORIZEDEX
/AWS1/CX_IOXVALIDATIONEX
/AWS1/CX_IOXCLIENTEXC
/AWS1/CX_IOXSERVEREXC
/AWS1/CX_RT_TECHNICAL_GENERIC
/AWS1/CX_RT_SERVICE_GENERIC.
IMPORTING¶
Required arguments:¶
iv_role TYPE /AWS1/IOXROLE /AWS1/IOXROLE¶
The type of device used. This will be the hub controller, cloud device, or AWS IoT device.
iv_authenticationmaterial TYPE /AWS1/IOXAUTHMATERIALSTRING /AWS1/IOXAUTHMATERIALSTRING¶
The authentication material defining the device connectivity setup requests. The authentication materials used are the device bar code.
iv_authntctnmaterialtype TYPE /AWS1/IOXAUTHMATERIALTYPE /AWS1/IOXAUTHMATERIALTYPE¶
The type of authentication material used for device connectivity setup requests.
Optional arguments:¶
iv_owner TYPE /AWS1/IOXOWNER /AWS1/IOXOWNER¶
Owner of the device, usually an indication of whom the device belongs to. This value should not contain personal identifiable information.
iv_credentiallockerid TYPE /AWS1/IOXCREDENTIALLOCKERID /AWS1/IOXCREDENTIALLOCKERID¶
The identifier of the credential for the managed thing.
iv_serialnumber TYPE /AWS1/IOXSERIALNUMBER /AWS1/IOXSERIALNUMBER¶
The serial number of the device.
iv_brand TYPE /AWS1/IOXBRAND /AWS1/IOXBRAND¶
The brand of the device.
iv_model TYPE /AWS1/IOXMODEL /AWS1/IOXMODEL¶
The model of the device.
iv_name TYPE /AWS1/IOXNAME /AWS1/IOXNAME¶
The name of the managed thing representing the physical device.
io_capabilityreport TYPE REF TO /AWS1/CL_IOXCAPABILITYREPORT /AWS1/CL_IOXCAPABILITYREPORT¶
A report of the capabilities for the managed thing.
it_capabilityschemas TYPE /AWS1/CL_IOXCAPABILITYSCHITEM=>TT_CAPABILITYSCHEMAS TT_CAPABILITYSCHEMAS¶
The capability schemas that define the functionality and features supported by the managed thing, including device capabilities and their associated properties.
iv_capabilities TYPE /AWS1/IOXCAPABILITIES /AWS1/IOXCAPABILITIES¶
The capabilities of the device such as light bulb.
iv_clienttoken TYPE /AWS1/IOXCLIENTTOKEN /AWS1/IOXCLIENTTOKEN¶
An idempotency token. If you retry a request that completed successfully initially using the same client token and parameters, then the retry attempt will succeed without performing any further actions.
iv_classification TYPE /AWS1/IOXCLASSIFICATION /AWS1/IOXCLASSIFICATION¶
The classification of the managed thing such as light bulb or thermostat.
it_tags TYPE /AWS1/CL_IOXTAGSMAP_W=>TT_TAGSMAP TT_TAGSMAP¶
A set of key/value pairs that are used to manage the managed thing.
it_metadata TYPE /AWS1/CL_IOXMETADATA_W=>TT_METADATA TT_METADATA¶
The metadata for the managed thing.
The
managedThingmetadataparameter is used for associating attributes with amanagedThingthat can be used for grouping over-the-air (OTA) tasks. Name value pairs inmetadatacan be used in theOtaTargetQueryStringparameter for theCreateOtaTaskAPI operation.
RETURNING¶
oo_output TYPE REF TO /aws1/cl_ioxcremanagedthingrsp /AWS1/CL_IOXCREMANAGEDTHINGRSP¶
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->createmanagedthing(
io_capabilityreport = new /aws1/cl_ioxcapabilityreport(
it_endpoints = VALUE /aws1/cl_ioxcapabilityrptendpt=>tt_capabilityreportendpoints(
(
new /aws1/cl_ioxcapabilityrptendpt(
it_capabilities = VALUE /aws1/cl_ioxcapabilityrptcap00=>tt_capabilityrptcapabilities(
(
new /aws1/cl_ioxcapabilityrptcap00(
it_actions = VALUE /aws1/cl_ioxcapabilityrptact_w=>tt_capabilityreportactions(
( new /aws1/cl_ioxcapabilityrptact_w( |string| ) )
)
it_events = VALUE /aws1/cl_ioxcapabilityrptevt00=>tt_capabilityreportevents(
( new /aws1/cl_ioxcapabilityrptevt00( |string| ) )
)
it_properties = VALUE /aws1/cl_ioxcapabilityrptprp00=>tt_capabilityreportproperties(
( new /aws1/cl_ioxcapabilityrptprp00( |string| ) )
)
iv_id = |string|
iv_name = |string|
iv_version = |string|
)
)
)
it_devicetypes = VALUE /aws1/cl_ioxdevicetypes_w=>tt_devicetypes(
( new /aws1/cl_ioxdevicetypes_w( |string| ) )
)
iv_id = |string|
)
)
)
iv_nodeid = |string|
iv_version = |string|
)
it_capabilityschemas = VALUE /aws1/cl_ioxcapabilityschitem=>tt_capabilityschemas(
(
new /aws1/cl_ioxcapabilityschitem(
io_schema = /AWS1/CL_RT_DOCUMENT=>FROM_JSON_STR( |\{"foo":"this is a JSON object..."\}| )
iv_capabilityid = |string|
iv_extrinsicid = |string|
iv_extrinsicversion = 123
iv_format = |string|
)
)
)
it_metadata = VALUE /aws1/cl_ioxmetadata_w=>tt_metadata(
(
VALUE /aws1/cl_ioxmetadata_w=>ts_metadata_maprow(
value = new /aws1/cl_ioxmetadata_w( |string| )
key = |string|
)
)
)
it_tags = VALUE /aws1/cl_ioxtagsmap_w=>tt_tagsmap(
(
VALUE /aws1/cl_ioxtagsmap_w=>ts_tagsmap_maprow(
key = |string|
value = new /aws1/cl_ioxtagsmap_w( |string| )
)
)
)
iv_authenticationmaterial = |string|
iv_authntctnmaterialtype = |string|
iv_brand = |string|
iv_capabilities = |string|
iv_classification = |string|
iv_clienttoken = |string|
iv_credentiallockerid = |string|
iv_model = |string|
iv_name = |string|
iv_owner = |string|
iv_role = |string|
iv_serialnumber = |string|
).
This is an example of reading all possible response values
lo_result = lo_result.
IF lo_result IS NOT INITIAL.
lv_managedthingid = lo_result->get_id( ).
lv_managedthingarn = lo_result->get_arn( ).
lv_createdat = lo_result->get_createdat( ).
ENDIF.