Files
self 1fb848b8cb feat: namespace plugin identity
Adopt canonical plugin id/slug manifest fields, vendor-prefixed OTP app naming, and fully-qualified capability ids for Sender.
2026-05-27 19:05:39 +02:00

53 lines
1.8 KiB
Elixir

defmodule TribeOne.TribesPlugin.Sender.Streaming do
@moduledoc """
Ash domain for Sender's stream topology and operational metadata.
"""
use Ash.Domain,
otp_app: :tribe_one_sender
resources do
resource TribeOne.TribesPlugin.Sender.Streaming.Stream do
define(:create_stream, action: :create)
define(:update_stream, action: :update)
define(:list_streams, action: :read)
define(:get_stream, action: :by_id, args: [:id])
end
resource TribeOne.TribesPlugin.Sender.Streaming.StreamKey do
define(:create_stream_key, action: :create)
define(:list_stream_keys, action: :read)
end
resource TribeOne.TribesPlugin.Sender.Streaming.StreamGeneration do
define(:create_stream_generation, action: :create)
define(:update_stream_generation, action: :update)
define(:get_stream_generation, action: :by_id, args: [:id])
define(:list_stream_generations, action: :read)
end
resource TribeOne.TribesPlugin.Sender.Streaming.MediaEndpoint do
define(:upsert_media_endpoint, action: :upsert)
define(:list_media_endpoints, action: :read)
define(:get_media_endpoint, action: :by_id, args: [:id])
end
resource TribeOne.TribesPlugin.Sender.Streaming.Rendition do
define(:upsert_rendition, action: :upsert)
define(:update_rendition, action: :update)
define(:get_rendition, action: :by_id, args: [:id])
define(:list_renditions, action: :read)
end
resource TribeOne.TribesPlugin.Sender.Streaming.EndpointSnapshot do
define(:upsert_endpoint_snapshot, action: :upsert)
define(:list_endpoint_snapshots, action: :read)
end
resource TribeOne.TribesPlugin.Sender.Streaming.EndpointHistory do
define(:upsert_endpoint_history, action: :upsert)
define(:list_endpoint_histories, action: :read)
end
end
end