/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ /* * Do not modify this file. This file is generated from the ivs-2020-07-14.normal.json service model. */ using System; using System.Collections.Generic; using System.Xml.Serialization; using System.Text; using System.IO; using System.Net; using Amazon.Runtime; using Amazon.Runtime.Internal; namespace Amazon.IVS.Model { /// /// Specifies a live video stream that has been ingested and distributed. /// public partial class Stream { private string _channelArn; private StreamHealth _health; private string _playbackUrl; private DateTime? _startTime; private StreamState _state; private string _streamId; private long? _viewerCount; /// /// Gets and sets the property ChannelArn. /// /// Channel ARN for the stream. /// /// [AWSProperty(Min=1, Max=128)] public string ChannelArn { get { return this._channelArn; } set { this._channelArn = value; } } // Check to see if ChannelArn property is set internal bool IsSetChannelArn() { return this._channelArn != null; } /// /// Gets and sets the property Health. /// /// The stream’s health. /// /// public StreamHealth Health { get { return this._health; } set { this._health = value; } } // Check to see if Health property is set internal bool IsSetHealth() { return this._health != null; } /// /// Gets and sets the property PlaybackUrl. /// /// URL of the master playlist, required by the video player to play the HLS stream. /// /// public string PlaybackUrl { get { return this._playbackUrl; } set { this._playbackUrl = value; } } // Check to see if PlaybackUrl property is set internal bool IsSetPlaybackUrl() { return this._playbackUrl != null; } /// /// Gets and sets the property StartTime. /// /// Time of the stream’s start. This is an ISO 8601 timestamp; note that this is returned /// as a string. /// /// public DateTime StartTime { get { return this._startTime.GetValueOrDefault(); } set { this._startTime = value; } } // Check to see if StartTime property is set internal bool IsSetStartTime() { return this._startTime.HasValue; } /// /// Gets and sets the property State. /// /// The stream’s state. Do not rely on the OFFLINE state, as the API may /// not return it; instead, a "NotBroadcasting" error will indicate that the stream is /// not live. /// /// public StreamState State { get { return this._state; } set { this._state = value; } } // Check to see if State property is set internal bool IsSetState() { return this._state != null; } /// /// Gets and sets the property StreamId. /// /// Unique identifier for a live or previously live stream in the specified channel. /// /// [AWSProperty(Min=26, Max=26)] public string StreamId { get { return this._streamId; } set { this._streamId = value; } } // Check to see if StreamId property is set internal bool IsSetStreamId() { return this._streamId != null; } /// /// Gets and sets the property ViewerCount. /// /// A count of concurrent views of the stream. Typically, a new view appears in viewerCount /// within 15 seconds of when video playback starts and a view is removed from viewerCount /// within 1 minute of when video playback ends. A value of -1 indicates that the request /// timed out; in this case, retry. /// /// public long ViewerCount { get { return this._viewerCount.GetValueOrDefault(); } set { this._viewerCount = value; } } // Check to see if ViewerCount property is set internal bool IsSetViewerCount() { return this._viewerCount.HasValue; } } }