Mux v1.4.0 Mux.Video.LiveStreams View Source
This module provides functions for managing live streams in Mux Video. API Documentation
Link to this section Summary
Functions
Create a new live stream.
Create a live stream playback ID
Delete a live stream.
Delete a live stream playback ID
Retrieve a live stream by ID.
List all live streams.
Reset a live stream key if you want to immediately stop the current stream key from working and create a new stream key that can be used for future broadcasts.
Signal a live stream is finished
Link to this section Functions
create(client, params) View Source
Create a new live stream.
Returns {:ok, live_stream, %Tesla.Env{}}
.
Examples
iex> client = Mux.Base.new("my_token_id", "my_token_secret")
iex> {:ok, live_stream, _env} = Mux.Video.LiveStreams.create(client, %{playback_policy: "public", new_asset_settings: %{playback_policy: "public"}})
iex> live_stream
%{"created_at" => "1557338261", "id" => "aA02skpHXoLrbQm49qIzAG6RtewFOcDEY", "new_asset_settings" => %{"playback_policies" => ["public"]}, "playback_ids" => [%{"id" => "iOkfIGstt4u1eYdFcPKGTWKz75Acpv3w", "policy" => "public"}], "reconnect_window" => 60, "status" => "idle", "stream_key" => "54676b58-6b19-5acb-f5bf-3aa35222efc6"}
create_playback_id(client, live_stream_id, params) View Source
Create a live stream playback ID
Returns a tuple such as {:ok, playback_ids, %Tesla.Env{}}
Examples
iex> client = Mux.Base.new("my_token_id", "my_token_secret")
iex> {:ok, playback_id, _env} = Mux.Video.LiveStreams.create_playback_id(client, "aA02skpHXoLrbQm49qIzAG6RtewFOcDEY", %{policy: "public"})
iex> playback_id
%{id: "FRDDXsjcNgD013rx1M4CDunZ86xkq8A02hfF3b6XAa7iE", policy: "public"}
delete(client, live_stream_id) View Source
Delete a live stream.
Returns a tuple such as {:ok, "", %Tesla.Env{}}
Examples
iex> client = Mux.Base.new("my_token_id", "my_token_secret")
iex> {status, _data, _env} = Mux.Video.LiveStreams.delete(client, "aA02skpHXoLrbQm49qIzAG6RtewFOcDEY")
iex> status
:ok
delete_playback_id(client, live_stream_id, playback_id) View Source
Delete a live stream playback ID
Returns a tuple such as {:ok, "", %Tesla.Env{}}
Examples
iex> client = Mux.Base.new("my_token_id", "my_token_secret")
iex> {status, _, _env} = Mux.Video.LiveStreams.delete_playback_id(client, "aA02skpHXoLrbQm49qIzAG6RtewFOcDEY", "FRDDXsjcNgD013rx1M4CDunZ86xkq8A02hfF3b6XAa7iE")
iex> status
:ok
get(client, live_stream_id, options \\ []) View Source
Retrieve a live stream by ID.
Returns a tuple such as {:ok, live_stream, %Tesla.Env{}}
Examples
iex> client = Mux.Base.new("my_token_id", "my_token_secret")
iex> {:ok, live_stream, _env} = Mux.Video.LiveStreams.get(client, "aA02skpHXoLrbQm49qIzAG6RtewFOcDEY")
iex> live_stream
%{"created_at" => "1557338261", "id" => "aA02skpHXoLrbQm49qIzAG6RtewFOcDEY", "new_asset_settings" => %{"playback_policies" => ["public"]}, "playback_ids" => [%{"id" => "iOkfIGstt4u1eYdFcPKGTWKz75Acpv3w", "policy" => "public"}], "reconnect_window" => 60, "status" => "idle", "stream_key" => "54676b58-6b19-5acb-f5bf-3aa35222efc6"}
list(client, params \\ []) View Source
List all live streams.
Returns a tuple such as {:ok, live_streams, %Tesla.Env{}}
Examples
iex> client = Mux.Base.new("my_token_id", "my_token_secret")
iex> {:ok, live_streams, _env} = Mux.Video.LiveStreams.list(client)
iex> live_streams
[%{"created_at" => "1557338261", "id" => "aA02skpHXoLrbQm49qIzAG6RtewFOcDEY", "new_asset_settings" => %{"playback_policies" => ["public"]}, "playback_ids" => [%{"id" => "iOkfIGstt4u1eYdFcPKGTWKz75Acpv3w", "policy" => "public"}], "reconnect_window" => 60, "status" => "idle", "stream_key" => "54676b58-6b19-5acb-f5bf-3aa35222efc6"}, %{"created_at" => "1557338261", "id" => "aA02skpHXoLrbQm49qIzAG6RtewFOcDEY", "new_asset_settings" => %{"playback_policies" => ["public"]}, "playback_ids" => [%{"id" => "iOkfIGstt4u1eYdFcPKGTWKz75Acpv3w", "policy" => "public"}], "reconnect_window" => 60, "status" => "idle", "stream_key" => "54676b58-6b19-5acb-f5bf-3aa35222efc6"}]
reset_stream_key(client, live_stream_id) View Source
Reset a live stream key if you want to immediately stop the current stream key from working and create a new stream key that can be used for future broadcasts.
Returns a tuple such as {:ok, "", %Tesla.Env{}}
Examples
iex> client = Mux.Base.new("my_token_id", "my_token_secret")
iex> {:ok, live_stream, _env} = Mux.Video.LiveStreams.reset_stream_key(client, "aA02skpHXoLrbQm49qIzAG6RtewFOcDEY")
iex> live_stream
%{"created_at" => "1557338261", "id" => "aA02skpHXoLrbQm49qIzAG6RtewFOcDEY", "new_asset_settings" => %{"playback_policies" => ["public"]}, "playback_ids" => [%{"id" => "iOkfIGstt4u1eYdFcPKGTWKz75Acpv3w", "policy" => "public"}], "reconnect_window" => 60, "status" => "idle", "stream_key" => "54676b58-6b19-5acb-f5bf-3aa35222efc6"}
signal_complete(client, live_stream_id) View Source
Signal a live stream is finished
Returns a tuple such as {:ok, "", %Tesla.Env{}}
Examples
iex> client = Mux.Base.new("my_token_id", "my_token_secret")
iex> {status, _, _env} = Mux.Video.LiveStreams.signal_complete(client, "aA02skpHXoLrbQm49qIzAG6RtewFOcDEY")
iex> status
:ok