Skip to content

API for Amazon Interactive Video Service RealTime

ABAP Package /AWS1/API_IVR_IMPL
ABAP SDK "TLA" IVR
ABAP Interface /AWS1/IF_IVR

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 Amazon Interactive Video Service RealTime is IVR. 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 IVS RealTime 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

Introduction

The Amazon Interactive Video Service (IVS) real-time API is REST compatible, using a standard HTTP API and an AWS EventBridge event stream for responses. JSON is used for both requests and responses, including errors.

Terminology:

  • A stage is a virtual space where participants can exchange video in real time.

  • A participant token is a token that authenticates a participant when they join a stage.

  • A participant object represents participants (people) in the stage and contains information about them. When a token is created, it includes a participant ID; when a participant uses that token to join a stage, the participant is associated with that participant ID. There is a 1:1 mapping between participant tokens and participants.

  • Server-side composition: The composition process composites participants of a stage into a single video and forwards it to a set of outputs (e.g., IVS channels). Composition endpoints support this process.

  • Server-side composition: A composition controls the look of the outputs, including how participants are positioned in the video.

Resources

The following resources contain information about your IVS live stream (see Getting Started with Amazon IVS Real-Time Streaming):

  • Stage — A stage is a virtual space where participants can exchange video in real time.

Tagging

A tag is a metadata label that you assign to an AWS resource. A tag comprises a key and a value, both set by you. For example, you might set a tag as topic:nature to label a particular video category. See Tagging AWS Resources for more information, including restrictions that apply to tags and "Tag naming limits and requirements"; Amazon IVS stages has no service-specific constraints beyond what is documented there.

Tags can help you identify and organize your AWS resources. For example, you can use the same tag for different resources to indicate that they are related. You can also use tags to manage access (see Access Tags).

The Amazon IVS real-time API has these tag-related endpoints: TagResource, UntagResource, and ListTagsForResource. The following resource supports tagging: Stage.

At most 50 tags can be applied to a resource.

Stages Endpoints

  • CreateParticipantToken — Creates an additional token for a specified stage. This can be done after stage creation or when tokens expire.

  • CreateStage — Creates a new stage (and optionally participant tokens).

  • DeleteStage — Shuts down and deletes the specified stage (disconnecting all participants).

  • DisconnectParticipant — Disconnects a specified participant and revokes the participant permanently from a specified stage.

  • GetParticipant — Gets information about the specified participant token.

  • GetStage — Gets information for the specified stage.

  • GetStageSession — Gets information for the specified stage session.

  • ListParticipantEvents — Lists events for a specified participant that occurred during a specified stage session.

  • ListParticipants — Lists all participants in a specified stage session.

  • ListStages — Gets summary information about all stages in your account, in the AWS region where the API request is processed.

  • ListStageSessions — Gets all sessions for a specified stage.

  • UpdateStage — Updates a stage’s configuration.

Composition Endpoints

  • GetComposition — Gets information about the specified Composition resource.

  • ListCompositions — Gets summary information about all Compositions in your account, in the AWS region where the API request is processed.

  • StartComposition — Starts a Composition from a stage based on the configuration provided in the request.

  • StopComposition — Stops and deletes a Composition resource. Any broadcast from the Composition resource is stopped.

EncoderConfiguration Endpoints

StorageConfiguration Endpoints

Tags Endpoints

  • ListTagsForResource — Gets information about AWS tags for the specified ARN.

  • TagResource — Adds or updates tags for the AWS resource with the specified ARN.

  • UntagResource — Removes tags from the resource with the specified ARN.

Using the SDK

In your code, create a client using the SDK module for Amazon Interactive Video Service RealTime, which is created with factory method /AWS1/CL_IVR_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_ivr)       = /aws1/cl_ivr_factory=>create( go_session ).

Your variable go_ivr is an instance of /AWS1/IF_IVR, and all of the operations in the Amazon Interactive Video Service RealTime service are accessed by calling methods in /AWS1/IF_IVR.

API Operations

For an overview of ABAP method calls corresponding to API operations in Amazon Interactive Video Service RealTime, see the Operation List.

Factory Method

/AWS1/CL_IVR_FACTORY=>create( )

Creates an object of type /AWS1/IF_IVR.

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_IVR /AWS1/IF_IVR

/AWS1/IF_IVR represents the ABAP client for the IVS RealTime service, representing each operation as a method call. For more information see the API Page page.

Configuring Programmatically

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

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

Paginators

Paginators for Amazon Interactive Video Service RealTime can be created via get_paginator() which returns a paginator object of type /AWS1/IF_IVR_PAGINATOR. The operation method that is being paginated is called using the paginator object, which accepts any necessary parameters to provide to the underlying API operation. This returns an iterator object which can be used to iterate over paginated results using has_next() and get_next() methods.

Details about the paginator methods available for service Amazon Interactive Video Service RealTime can be found in interface /AWS1/IF_IVR_PAGINATOR.