Skip to content

/AWS1/IF_AFB=>REGISTERAVSDEVICE()

About RegisterAVSDevice

Registers an Alexa-enabled device built by an Original Equipment Manufacturer (OEM) using Alexa Voice Service (AVS).

Method Signature

IMPORTING

Required arguments:

iv_clientid TYPE /AWS1/AFBCLIENTID /AWS1/AFBCLIENTID

The client ID of the OEM used for code-based linking authorization on an AVS device.

iv_usercode TYPE /AWS1/AFBUSERCODE /AWS1/AFBUSERCODE

The code that is obtained after your AVS device has made a POST request to LWA as a part of the Device Authorization Request component of the OAuth code-based linking specification.

iv_productid TYPE /AWS1/AFBPRODUCTID /AWS1/AFBPRODUCTID

The product ID used to identify your AVS device during authorization.

iv_amazonid TYPE /AWS1/AFBAMAZONID /AWS1/AFBAMAZONID

The device type ID for your AVS device generated by Amazon when the OEM creates a new product on Amazon's Developer Console.

Optional arguments:

iv_deviceserialnumber TYPE /AWS1/AFBDEVSERIALNUMBERFORAVS /AWS1/AFBDEVSERIALNUMBERFORAVS

The key generated by the OEM that uniquely identifies a specified instance of your AVS device.

iv_roomarn TYPE /AWS1/AFBARN /AWS1/AFBARN

The Amazon Resource Name (ARN) of the room with which to associate your AVS device.

it_tags TYPE /AWS1/CL_AFBTAG=>TT_TAGLIST TT_TAGLIST

The tags to be added to the specified resource. Do not provide system tags.

RETURNING

oo_output TYPE REF TO /aws1/cl_afbregavsdevicersp /AWS1/CL_AFBREGAVSDEVICERSP

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->/aws1/if_afb~registeravsdevice(
  it_tags = VALUE /aws1/cl_afbtag=>tt_taglist(
    (
      new /aws1/cl_afbtag(
        iv_key = |string|
        iv_value = |string|
      )
    )
  )
  iv_amazonid = |string|
  iv_clientid = |string|
  iv_deviceserialnumber = |string|
  iv_productid = |string|
  iv_roomarn = |string|
  iv_usercode = |string|
).

This is an example of reading all possible response values

lo_result = lo_result.
IF lo_result IS NOT INITIAL.
  lv_arn = lo_result->get_devicearn( ).
ENDIF.