Class Participant

java.lang.Object
software.amazon.awssdk.services.ivsrealtime.model.Participant
All Implemented Interfaces:
Serializable, SdkPojo, ToCopyableBuilder<Participant.Builder,Participant>

@Generated("software.amazon.awssdk:codegen") public final class Participant extends Object implements SdkPojo, Serializable, ToCopyableBuilder<Participant.Builder,Participant>

Object describing a participant that has joined a stage.

See Also:
  • Method Details

    • participantId

      public final String participantId()

      Unique identifier for this participant, assigned by IVS.

      Returns:
      Unique identifier for this participant, assigned by IVS.
    • userId

      public final String userId()

      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.

      Returns:
      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

      public final ParticipantState state()

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

      If the service returns an enum value that is not available in the current SDK version, state will return ParticipantState.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from stateAsString().

      Returns:
      Whether the participant is connected to or disconnected from the stage.
      See Also:
    • stateAsString

      public final String stateAsString()

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

      If the service returns an enum value that is not available in the current SDK version, state will return ParticipantState.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from stateAsString().

      Returns:
      Whether the participant is connected to or disconnected from the stage.
      See Also:
    • firstJoinTime

      public final Instant firstJoinTime()

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

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

      public final boolean hasAttributes()
      For responses, this returns true if the service returned a value for the Attributes property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • attributes

      public final Map<String,String> attributes()

      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.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasAttributes() method.

      Returns:
      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.
    • published

      public final Boolean published()

      Whether the participant ever published to the stage session.

      Returns:
      Whether the participant ever published to the stage session.
    • ispName

      public final String ispName()

      The participant’s Internet Service Provider.

      Returns:
      The participant’s Internet Service Provider.
    • osName

      public final String osName()

      The participant’s operating system.

      Returns:
      The participant’s operating system.
    • osVersion

      public final String osVersion()

      The participant’s operating system version.

      Returns:
      The participant’s operating system version.
    • browserName

      public final String browserName()

      The participant’s browser.

      Returns:
      The participant’s browser.
    • browserVersion

      public final String browserVersion()

      The participant’s browser version.

      Returns:
      The participant’s browser version.
    • sdkVersion

      public final String sdkVersion()

      The participant’s SDK version.

      Returns:
      The participant’s SDK version.
    • recordingS3BucketName

      public final String recordingS3BucketName()

      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.

      Returns:
      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

      public final String recordingS3Prefix()

      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. If individual participant recording merge is enabled, and if a stage publisher disconnects from a stage and then reconnects, IVS tries to record to the same S3 prefix as the previous session. See Merge Fragmented Individual Participant Recordings.

      Returns:
      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. If individual participant recording merge is enabled, and if a stage publisher disconnects from a stage and then reconnects, IVS tries to record to the same S3 prefix as the previous session. See Merge Fragmented Individual Participant Recordings.
    • recordingState

      public final ParticipantRecordingState recordingState()

      The participant’s recording state.

      If the service returns an enum value that is not available in the current SDK version, recordingState will return ParticipantRecordingState.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from recordingStateAsString().

      Returns:
      The participant’s recording state.
      See Also:
    • recordingStateAsString

      public final String recordingStateAsString()

      The participant’s recording state.

      If the service returns an enum value that is not available in the current SDK version, recordingState will return ParticipantRecordingState.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from recordingStateAsString().

      Returns:
      The participant’s recording state.
      See Also:
    • protocol

      public final ParticipantProtocol protocol()

      Type of ingest protocol that the participant employs for broadcasting.

      If the service returns an enum value that is not available in the current SDK version, protocol will return ParticipantProtocol.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from protocolAsString().

      Returns:
      Type of ingest protocol that the participant employs for broadcasting.
      See Also:
    • protocolAsString

      public final String protocolAsString()

      Type of ingest protocol that the participant employs for broadcasting.

      If the service returns an enum value that is not available in the current SDK version, protocol will return ParticipantProtocol.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from protocolAsString().

      Returns:
      Type of ingest protocol that the participant employs for broadcasting.
      See Also:
    • replicationType

      public final ReplicationType replicationType()

      Indicates if the participant has been replicated to another stage or is a replica from another stage. Default: NONE.

      If the service returns an enum value that is not available in the current SDK version, replicationType will return ReplicationType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from replicationTypeAsString().

      Returns:
      Indicates if the participant has been replicated to another stage or is a replica from another stage. Default: NONE.
      See Also:
    • replicationTypeAsString

      public final String replicationTypeAsString()

      Indicates if the participant has been replicated to another stage or is a replica from another stage. Default: NONE.

      If the service returns an enum value that is not available in the current SDK version, replicationType will return ReplicationType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from replicationTypeAsString().

      Returns:
      Indicates if the participant has been replicated to another stage or is a replica from another stage. Default: NONE.
      See Also:
    • replicationState

      public final ReplicationState replicationState()

      The participant's replication state.

      If the service returns an enum value that is not available in the current SDK version, replicationState will return ReplicationState.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from replicationStateAsString().

      Returns:
      The participant's replication state.
      See Also:
    • replicationStateAsString

      public final String replicationStateAsString()

      The participant's replication state.

      If the service returns an enum value that is not available in the current SDK version, replicationState will return ReplicationState.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from replicationStateAsString().

      Returns:
      The participant's replication state.
      See Also:
    • sourceStageArn

      public final String sourceStageArn()

      Source stage ARN from which this participant is replicated, if replicationType is REPLICA.

      Returns:
      Source stage ARN from which this participant is replicated, if replicationType is REPLICA.
    • sourceSessionId

      public final String sourceSessionId()

      ID of the session within the source stage, if replicationType is REPLICA.

      Returns:
      ID of the session within the source stage, if replicationType is REPLICA.
    • toBuilder

      public Participant.Builder toBuilder()
      Description copied from interface: ToCopyableBuilder
      Take this object and create a builder that contains all of the current property values of this object.
      Specified by:
      toBuilder in interface ToCopyableBuilder<Participant.Builder,Participant>
      Returns:
      a builder for type T
    • builder

      public static Participant.Builder builder()
    • serializableBuilderClass

      public static Class<? extends Participant.Builder> serializableBuilderClass()
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public final boolean equals(Object obj)
      Overrides:
      equals in class Object
    • equalsBySdkFields

      public final boolean equalsBySdkFields(Object obj)
      Description copied from interface: SdkPojo
      Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in an SdkPojo class, and is generated based on a service model.

      If an SdkPojo class does not have any inherited fields, equalsBySdkFields and equals are essentially the same.

      Specified by:
      equalsBySdkFields in interface SdkPojo
      Parameters:
      obj - the object to be compared with
      Returns:
      true if the other object equals to this object by sdk fields, false otherwise.
    • toString

      public final String toString()
      Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
      Overrides:
      toString in class Object
    • getValueForField

      public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
    • sdkFields

      public final List<SdkField<?>> sdkFields()
      Specified by:
      sdkFields in interface SdkPojo
      Returns:
      List of SdkField in this POJO. May be empty list but should never be null.
    • sdkFieldNameToField

      public final Map<String,SdkField<?>> sdkFieldNameToField()
      Specified by:
      sdkFieldNameToField in interface SdkPojo
      Returns:
      The mapping between the field name and its corresponding field.