Amazon Interactive Video Service RealTime

2024/09/09 - Amazon Interactive Video Service RealTime - 5 new 5 updated api methods

Changes  IVS Real-Time now offers customers the ability to broadcast to Stages using RTMP(S).

CreateIngestConfiguration (new) Link ¶

Creates a new IngestConfiguration resource, used to specify the ingest protocol for a stage.

See also: AWS API Documentation

Request Syntax

client.create_ingest_configuration(
    name='string',
    stageArn='string',
    userId='string',
    attributes={
        'string': 'string'
    },
    ingestProtocol='RTMP'|'RTMPS',
    insecureIngest=True|False,
    tags={
        'string': 'string'
    }
)
type name

string

param name

Optional name that can be specified for the IngestConfiguration being created.

type stageArn

string

param stageArn

ARN of the stage with which the IngestConfiguration is associated.

type userId

string

param userId

Customer-assigned name to help identify the participant using the IngestConfiguration; this can be used to link a participant to a user in the customer’s own systems. This can be any UTF-8 encoded text. This field is exposed to all stage participants and should not be used for personally identifying, confidential, or sensitive information.

type attributes

dict

param attributes

Application-provided attributes to store in the IngestConfiguration and attach to a stage. Map keys and values can contain UTF-8 encoded text. The maximum length of this field is 1 KB total. This field is exposed to all stage participants and should not be used for personally identifying, confidential, or sensitive information.

  • (string) --

    • (string) --

type ingestProtocol

string

param ingestProtocol

[REQUIRED]

Type of ingest protocol that the user employs to broadcast. If this is set to RTMP , insecureIngest must be set to true .

type insecureIngest

boolean

param insecureIngest

Whether the stage allows insecure RTMP ingest. This must be set to true , if ingestProtocol is set to RTMP . Default: false .

type tags

dict

param tags

Tags attached to the resource. Array of maps, each of the form string:string (key:value) . See Best practices and strategies in Tagging AWS Resources and Tag Editor for details, including restrictions that apply to tags and "Tag naming limits and requirements"; Amazon IVS has no constraints on tags beyond what is documented there.

  • (string) --

    • (string) --

rtype

dict

returns

Response Syntax

{
    'ingestConfiguration': {
        'name': 'string',
        'arn': 'string',
        'ingestProtocol': 'RTMP'|'RTMPS',
        'streamKey': 'string',
        'stageArn': 'string',
        'participantId': 'string',
        'state': 'ACTIVE'|'INACTIVE',
        'userId': 'string',
        'attributes': {
            'string': 'string'
        },
        'tags': {
            'string': 'string'
        }
    }
}

Response Structure

  • (dict) --

    • ingestConfiguration (dict) --

      The IngestConfiguration that was created.

      • name (string) --

        Ingest name

      • arn (string) --

        Ingest configuration ARN.

      • ingestProtocol (string) --

        Type of ingest protocol that the user employs for broadcasting.

      • streamKey (string) --

        Ingest-key value for the RTMP(S) protocol.

      • stageArn (string) --

        ARN of the stage with which the IngestConfiguration is associated.

      • participantId (string) --

        ID of the participant within the stage.

      • state (string) --

        State of the ingest configuration. It is ACTIVE if a publisher currently is publishing to the stage associated with the ingest configuration.

      • userId (string) --

        Customer-assigned name to help identify the participant using the IngestConfiguration; this can be used to link a participant to a user in the customer’s own systems. This can be any UTF-8 encoded text. This field is exposed to all stage participants and should not be used for personally identifying, confidential, or sensitive information.

      • attributes (dict) --

        Application-provided attributes to to store in the IngestConfiguration and attach to a stage. Map keys and values can contain UTF-8 encoded text. The maximum length of this field is 1 KB total. This field is exposed to all stage participants and should not be used for personally identifying, confidential, or sensitive information.

        • (string) --

          • (string) --

      • tags (dict) --

        Tags attached to the resource. Array of maps, each of the form string:string (key:value) . See Best practices and strategies in Tagging AWS Resources and Tag Editor for details, including restrictions that apply to tags and "Tag naming limits and requirements"; Amazon IVS has no constraints on tags beyond what is documented there.

        • (string) --

          • (string) --

DeleteIngestConfiguration (new) Link ¶

Deletes a specified IngestConfiguration, so it can no longer be used to broadcast. An IngestConfiguration cannot be deleted if the publisher is actively streaming to a stage, unless force is set to true .

See also: AWS API Documentation

Request Syntax

client.delete_ingest_configuration(
    arn='string',
    force=True|False
)
type arn

string

param arn

[REQUIRED]

ARN of the IngestConfiguration.

type force

boolean

param force

Optional field to force deletion of the IngestConfiguration. If this is set to true when a participant is actively publishing, the participant is disconnected from the stage, followed by deletion of the IngestConfiguration. Default: false .

rtype

dict

returns

Response Syntax

{}

Response Structure

  • (dict) --

UpdateIngestConfiguration (new) Link ¶

Updates a specified IngestConfiguration. Only the stage ARN attached to the IngestConfiguration can be updated. An IngestConfiguration that is active cannot be updated.

See also: AWS API Documentation

Request Syntax

client.update_ingest_configuration(
    arn='string',
    stageArn='string'
)
type arn

string

param arn

[REQUIRED]

ARN of the IngestConfiguration, for which the related stage ARN needs to be updated.

type stageArn

string

param stageArn

Stage ARN that needs to be updated.

rtype

dict

returns

Response Syntax

{
    'ingestConfiguration': {
        'name': 'string',
        'arn': 'string',
        'ingestProtocol': 'RTMP'|'RTMPS',
        'streamKey': 'string',
        'stageArn': 'string',
        'participantId': 'string',
        'state': 'ACTIVE'|'INACTIVE',
        'userId': 'string',
        'attributes': {
            'string': 'string'
        },
        'tags': {
            'string': 'string'
        }
    }
}

Response Structure

  • (dict) --

    • ingestConfiguration (dict) --

      The updated IngestConfiguration.

      • name (string) --

        Ingest name

      • arn (string) --

        Ingest configuration ARN.

      • ingestProtocol (string) --

        Type of ingest protocol that the user employs for broadcasting.

      • streamKey (string) --

        Ingest-key value for the RTMP(S) protocol.

      • stageArn (string) --

        ARN of the stage with which the IngestConfiguration is associated.

      • participantId (string) --

        ID of the participant within the stage.

      • state (string) --

        State of the ingest configuration. It is ACTIVE if a publisher currently is publishing to the stage associated with the ingest configuration.

      • userId (string) --

        Customer-assigned name to help identify the participant using the IngestConfiguration; this can be used to link a participant to a user in the customer’s own systems. This can be any UTF-8 encoded text. This field is exposed to all stage participants and should not be used for personally identifying, confidential, or sensitive information.

      • attributes (dict) --

        Application-provided attributes to to store in the IngestConfiguration and attach to a stage. Map keys and values can contain UTF-8 encoded text. The maximum length of this field is 1 KB total. This field is exposed to all stage participants and should not be used for personally identifying, confidential, or sensitive information.

        • (string) --

          • (string) --

      • tags (dict) --

        Tags attached to the resource. Array of maps, each of the form string:string (key:value) . See Best practices and strategies in Tagging AWS Resources and Tag Editor for details, including restrictions that apply to tags and "Tag naming limits and requirements"; Amazon IVS has no constraints on tags beyond what is documented there.

        • (string) --

          • (string) --

ListIngestConfigurations (new) Link ¶

Lists all IngestConfigurations in your account, in the AWS region where the API request is processed.

See also: AWS API Documentation

Request Syntax

client.list_ingest_configurations(
    filterByStageArn='string',
    filterByState='ACTIVE'|'INACTIVE',
    nextToken='string',
    maxResults=123
)
type filterByStageArn

string

param filterByStageArn

Filters the response list to match the specified stage ARN. Only one filter (by stage ARN or by state) can be used at a time.

type filterByState

string

param filterByState

Filters the response list to match the specified state. Only one filter (by stage ARN or by state) can be used at a time.

type nextToken

string

param nextToken

The first IngestConfiguration to retrieve. This is used for pagination; see the nextToken response field.

type maxResults

integer

param maxResults

Maximum number of results to return. Default: 50.

rtype

dict

returns

Response Syntax

{
    'ingestConfigurations': [
        {
            'name': 'string',
            'arn': 'string',
            'ingestProtocol': 'RTMP'|'RTMPS',
            'stageArn': 'string',
            'participantId': 'string',
            'state': 'ACTIVE'|'INACTIVE',
            'userId': 'string'
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • ingestConfigurations (list) --

      List of the matching ingest configurations (summary information only).

      • (dict) --

        Summary information about an IngestConfiguration.

        • name (string) --

          Ingest name.

        • arn (string) --

          Ingest configuration ARN.

        • ingestProtocol (string) --

          Type of ingest protocol that the user employs for broadcasting.

        • stageArn (string) --

          ARN of the stage with which the IngestConfiguration is associated.

        • participantId (string) --

          ID of the participant within the stage.

        • state (string) --

          State of the ingest configuration. It is ACTIVE if a publisher currently is publishing to the stage associated with the ingest configuration.

        • userId (string) --

          Customer-assigned name to help identify the participant using the IngestConfiguration; this can be used to link a participant to a user in the customer’s own systems. This can be any UTF-8 encoded text. This field is exposed to all stage participants and should not be used for personally identifying, confidential, or sensitive information.

    • nextToken (string) --

      If there are more IngestConfigurations than maxResults , use nextToken in the request to get the next set.

GetIngestConfiguration (new) Link ¶

Gets information about the specified IngestConfiguration.

See also: AWS API Documentation

Request Syntax

client.get_ingest_configuration(
    arn='string'
)
type arn

string

param arn

[REQUIRED]

ARN of the ingest for which the information is to be retrieved.

rtype

dict

returns

Response Syntax

{
    'ingestConfiguration': {
        'name': 'string',
        'arn': 'string',
        'ingestProtocol': 'RTMP'|'RTMPS',
        'streamKey': 'string',
        'stageArn': 'string',
        'participantId': 'string',
        'state': 'ACTIVE'|'INACTIVE',
        'userId': 'string',
        'attributes': {
            'string': 'string'
        },
        'tags': {
            'string': 'string'
        }
    }
}

Response Structure

  • (dict) --

    • ingestConfiguration (dict) --

      The IngestConfiguration that was returned.

      • name (string) --

        Ingest name

      • arn (string) --

        Ingest configuration ARN.

      • ingestProtocol (string) --

        Type of ingest protocol that the user employs for broadcasting.

      • streamKey (string) --

        Ingest-key value for the RTMP(S) protocol.

      • stageArn (string) --

        ARN of the stage with which the IngestConfiguration is associated.

      • participantId (string) --

        ID of the participant within the stage.

      • state (string) --

        State of the ingest configuration. It is ACTIVE if a publisher currently is publishing to the stage associated with the ingest configuration.

      • userId (string) --

        Customer-assigned name to help identify the participant using the IngestConfiguration; this can be used to link a participant to a user in the customer’s own systems. This can be any UTF-8 encoded text. This field is exposed to all stage participants and should not be used for personally identifying, confidential, or sensitive information.

      • attributes (dict) --

        Application-provided attributes to to store in the IngestConfiguration and attach to a stage. Map keys and values can contain UTF-8 encoded text. The maximum length of this field is 1 KB total. This field is exposed to all stage participants and should not be used for personally identifying, confidential, or sensitive information.

        • (string) --

          • (string) --

      • tags (dict) --

        Tags attached to the resource. Array of maps, each of the form string:string (key:value) . See Best practices and strategies in Tagging AWS Resources and Tag Editor for details, including restrictions that apply to tags and "Tag naming limits and requirements"; Amazon IVS has no constraints on tags beyond what is documented there.

        • (string) --

          • (string) --

CreateStage (updated) Link ¶
Changes (response)
{'stage': {'endpoints': {'rtmp': 'string', 'rtmps': 'string'}}}

Creates a new stage (and optionally participant tokens).

See also: AWS API Documentation

Request Syntax

client.create_stage(
    name='string',
    participantTokenConfigurations=[
        {
            'duration': 123,
            'userId': 'string',
            'attributes': {
                'string': 'string'
            },
            'capabilities': [
                'PUBLISH'|'SUBSCRIBE',
            ]
        },
    ],
    tags={
        'string': 'string'
    },
    autoParticipantRecordingConfiguration={
        'storageConfigurationArn': 'string',
        'mediaTypes': [
            'AUDIO_VIDEO'|'AUDIO_ONLY',
        ]
    }
)
type name

string

param name

Optional name that can be specified for the stage being created.

type participantTokenConfigurations

list

param participantTokenConfigurations

Array of participant token configuration objects to attach to the new stage.

  • (dict) --

    Object specifying a participant token configuration in a stage.

    • duration (integer) --

      Duration (in minutes), after which the corresponding participant token expires. Default: 720 (12 hours).

    • userId (string) --

      Customer-assigned name to help identify the token; this can be used to link a participant to a user in the customer’s own systems. This can be any UTF-8 encoded text. This field is exposed to all stage participants and should not be used for personally identifying, confidential, or sensitive information.

    • attributes (dict) --

      Application-provided attributes to encode into the corresponding participant token and attach to a stage. Map keys and values can contain UTF-8 encoded text. The maximum length of this field is 1 KB total. This field is exposed to all stage participants and should not be used for personally identifying, confidential, or sensitive information.

      • (string) --

        • (string) --

    • capabilities (list) --

      Set of capabilities that the user is allowed to perform in the stage.

      • (string) --

type tags

dict

param tags

Tags attached to the resource. Array of maps, each of the form string:string (key:value) . See Best practices and strategies in Tagging AWS Resources and Tag Editor for details, including restrictions that apply to tags and "Tag naming limits and requirements"; Amazon IVS has no constraints on tags beyond what is documented there.

  • (string) --

    • (string) --

type autoParticipantRecordingConfiguration

dict

param autoParticipantRecordingConfiguration

Configuration object for individual participant recording, to attach to the new stage.

  • storageConfigurationArn (string) -- [REQUIRED]

    ARN of the StorageConfiguration resource to use for individual participant recording. Default: "" (empty string, no storage configuration is specified). Individual participant recording cannot be started unless a storage configuration is specified, when a Stage is created or updated.

  • mediaTypes (list) --

    Types of media to be recorded. Default: AUDIO_VIDEO .

    • (string) --

rtype

dict

returns

Response Syntax

{
    'stage': {
        'arn': 'string',
        'name': 'string',
        'activeSessionId': 'string',
        'tags': {
            'string': 'string'
        },
        'autoParticipantRecordingConfiguration': {
            'storageConfigurationArn': 'string',
            'mediaTypes': [
                'AUDIO_VIDEO'|'AUDIO_ONLY',
            ]
        },
        'endpoints': {
            'events': 'string',
            'whip': 'string',
            'rtmp': 'string',
            'rtmps': 'string'
        }
    },
    'participantTokens': [
        {
            'participantId': 'string',
            'token': 'string',
            'userId': 'string',
            'attributes': {
                'string': 'string'
            },
            'duration': 123,
            'capabilities': [
                'PUBLISH'|'SUBSCRIBE',
            ],
            'expirationTime': datetime(2015, 1, 1)
        },
    ]
}

Response Structure

  • (dict) --

    • stage (dict) --

      The stage that was created.

      • arn (string) --

        Stage ARN.

      • name (string) --

        Stage name.

      • activeSessionId (string) --

        ID of the active session within the stage.

      • tags (dict) --

        Tags attached to the resource. Array of maps, each of the form string:string (key:value) . See Best practices and strategies in Tagging AWS Resources and Tag Editor for details, including restrictions that apply to tags and "Tag naming limits and requirements"; Amazon IVS has no constraints on tags beyond what is documented there.

        • (string) --

          • (string) --

      • autoParticipantRecordingConfiguration (dict) --

        Configuration object for individual participant recording, attached to the stage.

        • storageConfigurationArn (string) --

          ARN of the StorageConfiguration resource to use for individual participant recording. Default: "" (empty string, no storage configuration is specified). Individual participant recording cannot be started unless a storage configuration is specified, when a Stage is created or updated.

        • mediaTypes (list) --

          Types of media to be recorded. Default: AUDIO_VIDEO .

          • (string) --

      • endpoints (dict) --

        Summary information about various endpoints for a stage.

        • events (string) --

          Events endpoint.

        • whip (string) --

          The endpoint to be used for IVS real-time streaming using the WHIP protocol.

        • rtmp (string) --

          The endpoint to be used for IVS real-time streaming using the RTMP protocol.

        • rtmps (string) --

          The endpoint to be used for IVS real-time streaming using the RTMPS protocol.

    • participantTokens (list) --

      Participant tokens attached to the stage. These correspond to the participants in the request.

      • (dict) --

        Object specifying a participant token in a stage.

        Important : Treat tokens as opaque; i.e., do not build functionality based on token contents. The format of tokens could change in the future.

        • participantId (string) --

          Unique identifier for this participant token, assigned by IVS.

        • token (string) --

          The issued client token, encrypted.

        • userId (string) --

          Customer-assigned name to help identify the token; this can be used to link a participant to a user in the customer’s own systems. This can be any UTF-8 encoded text. This field is exposed to all stage participants and should not be used for personally identifying, confidential, or sensitive information.

        • attributes (dict) --

          Application-provided attributes to encode into the token and attach to a stage. This field is exposed to all stage participants and should not be used for personally identifying, confidential, or sensitive information.

          • (string) --

            • (string) --

        • duration (integer) --

          Duration (in minutes), after which the participant token expires. Default: 720 (12 hours).

        • capabilities (list) --

          Set of capabilities that the user is allowed to perform in the stage.

          • (string) --

        • expirationTime (datetime) --

          ISO 8601 timestamp (returned as a string) for when this token expires.

GetParticipant (updated) Link ¶
Changes (response)
{'participant': {'protocol': 'UNKNOWN | WHIP | RTMP | RTMPS'}}

Gets information about the specified participant token.

See also: AWS API Documentation

Request Syntax

client.get_participant(
    stageArn='string',
    sessionId='string',
    participantId='string'
)
type stageArn

string

param stageArn

[REQUIRED]

Stage ARN.

type sessionId

string

param sessionId

[REQUIRED]

ID of a session within the stage.

type participantId

string

param participantId

[REQUIRED]

Unique identifier for the participant. This is assigned by IVS and returned by CreateParticipantToken.

rtype

dict

returns

Response Syntax

{
    'participant': {
        'participantId': 'string',
        'userId': 'string',
        'state': 'CONNECTED'|'DISCONNECTED',
        'firstJoinTime': datetime(2015, 1, 1),
        'attributes': {
            'string': 'string'
        },
        'published': True|False,
        'ispName': 'string',
        'osName': 'string',
        'osVersion': 'string',
        'browserName': 'string',
        'browserVersion': 'string',
        'sdkVersion': 'string',
        'recordingS3BucketName': 'string',
        'recordingS3Prefix': 'string',
        'recordingState': 'STARTING'|'ACTIVE'|'STOPPING'|'STOPPED'|'FAILED'|'DISABLED',
        'protocol': 'UNKNOWN'|'WHIP'|'RTMP'|'RTMPS'
    }
}

Response Structure

  • (dict) --

    • participant (dict) --

      The participant that is returned.

      • participantId (string) --

        Unique identifier for this participant, assigned by IVS.

      • userId (string) --

        Customer-assigned name to help identify the token; this can be used to link a participant to a user in the customer’s own systems. This can be any UTF-8 encoded text. This field is exposed to all stage participants and should not be used for personally identifying, confidential, or sensitive information .

      • state (string) --

        Whether the participant is connected to or disconnected from the stage.

      • firstJoinTime (datetime) --

        ISO 8601 timestamp (returned as a string) when the participant first joined the stage session.

      • attributes (dict) --

        Application-provided attributes to encode into the token and attach to a stage. Map keys and values can contain UTF-8 encoded text. The maximum length of this field is 1 KB total. This field is exposed to all stage participants and should not be used for personally identifying, confidential, or sensitive information .

        • (string) --

          • (string) --

      • published (boolean) --

        Whether the participant ever published to the stage session.

      • ispName (string) --

        The participant’s Internet Service Provider.

      • osName (string) --

        The participant’s operating system.

      • osVersion (string) --

        The participant’s operating system version.

      • browserName (string) --

        The participant’s browser.

      • browserVersion (string) --

        The participant’s browser version.

      • sdkVersion (string) --

        The participant’s SDK version.

      • recordingS3BucketName (string) --

        Name of the S3 bucket to where the participant is being recorded, if individual participant recording is enabled, or "" (empty string), if recording is not enabled.

      • recordingS3Prefix (string) --

        S3 prefix of the S3 bucket where the participant is being recorded, if individual participant recording is enabled, or "" (empty string), if recording is not enabled.

      • recordingState (string) --

        The participant’s recording state.

      • protocol (string) --

        Type of ingest protocol that the participant employs for broadcasting.

GetStage (updated) Link ¶
Changes (response)
{'stage': {'endpoints': {'rtmp': 'string', 'rtmps': 'string'}}}

Gets information for the specified stage.

See also: AWS API Documentation

Request Syntax

client.get_stage(
    arn='string'
)
type arn

string

param arn

[REQUIRED]

ARN of the stage for which the information is to be retrieved.

rtype

dict

returns

Response Syntax

{
    'stage': {
        'arn': 'string',
        'name': 'string',
        'activeSessionId': 'string',
        'tags': {
            'string': 'string'
        },
        'autoParticipantRecordingConfiguration': {
            'storageConfigurationArn': 'string',
            'mediaTypes': [
                'AUDIO_VIDEO'|'AUDIO_ONLY',
            ]
        },
        'endpoints': {
            'events': 'string',
            'whip': 'string',
            'rtmp': 'string',
            'rtmps': 'string'
        }
    }
}

Response Structure

  • (dict) --

    • stage (dict) --

      The stage that is returned.

      • arn (string) --

        Stage ARN.

      • name (string) --

        Stage name.

      • activeSessionId (string) --

        ID of the active session within the stage.

      • tags (dict) --

        Tags attached to the resource. Array of maps, each of the form string:string (key:value) . See Best practices and strategies in Tagging AWS Resources and Tag Editor for details, including restrictions that apply to tags and "Tag naming limits and requirements"; Amazon IVS has no constraints on tags beyond what is documented there.

        • (string) --

          • (string) --

      • autoParticipantRecordingConfiguration (dict) --

        Configuration object for individual participant recording, attached to the stage.

        • storageConfigurationArn (string) --

          ARN of the StorageConfiguration resource to use for individual participant recording. Default: "" (empty string, no storage configuration is specified). Individual participant recording cannot be started unless a storage configuration is specified, when a Stage is created or updated.

        • mediaTypes (list) --

          Types of media to be recorded. Default: AUDIO_VIDEO .

          • (string) --

      • endpoints (dict) --

        Summary information about various endpoints for a stage.

        • events (string) --

          Events endpoint.

        • whip (string) --

          The endpoint to be used for IVS real-time streaming using the WHIP protocol.

        • rtmp (string) --

          The endpoint to be used for IVS real-time streaming using the RTMP protocol.

        • rtmps (string) --

          The endpoint to be used for IVS real-time streaming using the RTMPS protocol.

ListParticipantEvents (updated) Link ¶
Changes (response)
{'events': {'errorCode': {'BITRATE_EXCEEDED',
                          'INVALID_AUDIO_CODEC',
                          'INVALID_PROTOCOL',
                          'INVALID_STREAM_KEY',
                          'INVALID_VIDEO_CODEC',
                          'RESOLUTION_EXCEEDED',
                          'REUSE_OF_STREAM_KEY',
                          'STREAM_DURATION_EXCEEDED'}}}

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

See also: AWS API Documentation

Request Syntax

client.list_participant_events(
    stageArn='string',
    sessionId='string',
    participantId='string',
    nextToken='string',
    maxResults=123
)
type stageArn

string

param stageArn

[REQUIRED]

Stage ARN.

type sessionId

string

param sessionId

[REQUIRED]

ID of a session within the stage.

type participantId

string

param participantId

[REQUIRED]

Unique identifier for this participant. This is assigned by IVS and returned by CreateParticipantToken.

type nextToken

string

param nextToken

The first participant event to retrieve. This is used for pagination; see the nextToken response field.

type maxResults

integer

param maxResults

Maximum number of results to return. Default: 50.

rtype

dict

returns

Response Syntax

{
    'events': [
        {
            'name': 'JOINED'|'LEFT'|'PUBLISH_STARTED'|'PUBLISH_STOPPED'|'SUBSCRIBE_STARTED'|'SUBSCRIBE_STOPPED'|'PUBLISH_ERROR'|'SUBSCRIBE_ERROR'|'JOIN_ERROR',
            'participantId': 'string',
            'eventTime': datetime(2015, 1, 1),
            'remoteParticipantId': 'string',
            'errorCode': 'INSUFFICIENT_CAPABILITIES'|'QUOTA_EXCEEDED'|'PUBLISHER_NOT_FOUND'|'BITRATE_EXCEEDED'|'RESOLUTION_EXCEEDED'|'STREAM_DURATION_EXCEEDED'|'INVALID_AUDIO_CODEC'|'INVALID_VIDEO_CODEC'|'INVALID_PROTOCOL'|'INVALID_STREAM_KEY'|'REUSE_OF_STREAM_KEY'
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • events (list) --

      List of the matching events.

      • (dict) --

        An occurrence during a stage session.

        • name (string) --

          The name of the event.

        • participantId (string) --

          Unique identifier for the participant who triggered the event. This is assigned by IVS.

        • eventTime (datetime) --

          ISO 8601 timestamp (returned as a string) for when the event occurred.

        • remoteParticipantId (string) --

          Unique identifier for the remote participant. For a subscribe event, this is the publisher. For a publish or join event, this is null. This is assigned by IVS.

        • errorCode (string) --

          If the event is an error event, the error code is provided to give insight into the specific error that occurred. If the event is not an error event, this field is null. INSUFFICIENT_CAPABILITIES indicates that the participant tried to take an action that the participant’s token is not allowed to do. For more information about participant capabilities, see the capabilities field in CreateParticipantToken. QUOTA_EXCEEDED indicates that the number of participants who want to publish/subscribe to a stage exceeds the quota; for more information, see Service Quotas. PUBLISHER_NOT_FOUND indicates that the participant tried to subscribe to a publisher that doesn’t exist.

    • nextToken (string) --

      If there are more events than maxResults , use nextToken in the request to get the next set.

UpdateStage (updated) Link ¶
Changes (response)
{'stage': {'endpoints': {'rtmp': 'string', 'rtmps': 'string'}}}

Updates a stage’s configuration.

See also: AWS API Documentation

Request Syntax

client.update_stage(
    arn='string',
    name='string',
    autoParticipantRecordingConfiguration={
        'storageConfigurationArn': 'string',
        'mediaTypes': [
            'AUDIO_VIDEO'|'AUDIO_ONLY',
        ]
    }
)
type arn

string

param arn

[REQUIRED]

ARN of the stage to be updated.

type name

string

param name

Name of the stage to be updated.

type autoParticipantRecordingConfiguration

dict

param autoParticipantRecordingConfiguration

Configuration object for individual participant recording, to attach to the stage. Note that this cannot be updated while recording is active.

  • storageConfigurationArn (string) -- [REQUIRED]

    ARN of the StorageConfiguration resource to use for individual participant recording. Default: "" (empty string, no storage configuration is specified). Individual participant recording cannot be started unless a storage configuration is specified, when a Stage is created or updated.

  • mediaTypes (list) --

    Types of media to be recorded. Default: AUDIO_VIDEO .

    • (string) --

rtype

dict

returns

Response Syntax

{
    'stage': {
        'arn': 'string',
        'name': 'string',
        'activeSessionId': 'string',
        'tags': {
            'string': 'string'
        },
        'autoParticipantRecordingConfiguration': {
            'storageConfigurationArn': 'string',
            'mediaTypes': [
                'AUDIO_VIDEO'|'AUDIO_ONLY',
            ]
        },
        'endpoints': {
            'events': 'string',
            'whip': 'string',
            'rtmp': 'string',
            'rtmps': 'string'
        }
    }
}

Response Structure

  • (dict) --

    • stage (dict) --

      The updated stage.

      • arn (string) --

        Stage ARN.

      • name (string) --

        Stage name.

      • activeSessionId (string) --

        ID of the active session within the stage.

      • tags (dict) --

        Tags attached to the resource. Array of maps, each of the form string:string (key:value) . See Best practices and strategies in Tagging AWS Resources and Tag Editor for details, including restrictions that apply to tags and "Tag naming limits and requirements"; Amazon IVS has no constraints on tags beyond what is documented there.

        • (string) --

          • (string) --

      • autoParticipantRecordingConfiguration (dict) --

        Configuration object for individual participant recording, attached to the stage.

        • storageConfigurationArn (string) --

          ARN of the StorageConfiguration resource to use for individual participant recording. Default: "" (empty string, no storage configuration is specified). Individual participant recording cannot be started unless a storage configuration is specified, when a Stage is created or updated.

        • mediaTypes (list) --

          Types of media to be recorded. Default: AUDIO_VIDEO .

          • (string) --

      • endpoints (dict) --

        Summary information about various endpoints for a stage.

        • events (string) --

          Events endpoint.

        • whip (string) --

          The endpoint to be used for IVS real-time streaming using the WHIP protocol.

        • rtmp (string) --

          The endpoint to be used for IVS real-time streaming using the RTMP protocol.

        • rtmps (string) --

          The endpoint to be used for IVS real-time streaming using the RTMPS protocol.