Files
Claper/lib/claper_web/channels/audio_socket.ex
Alex Lion 20abccf384 Merge branch 'feature/real-time-transcription' into v3
# Conflicts:
#	lib/claper_web/live/admin_live/event_live.ex
#	lib/claper_web/live/event_live/manage.ex
#	lib/claper_web/live/event_live/manage.html.heex
#	lib/claper_web/live/event_live/manager_settings_component.ex
#	lib/claper_web/router.ex
#	priv/gettext/de/LC_MESSAGES/default.po
#	priv/gettext/default.pot
#	priv/gettext/en/LC_MESSAGES/default.po
#	priv/gettext/es/LC_MESSAGES/default.po
#	priv/gettext/fr/LC_MESSAGES/default.po
#	priv/gettext/hu/LC_MESSAGES/default.po
#	priv/gettext/it/LC_MESSAGES/default.po
#	priv/gettext/lv/LC_MESSAGES/default.po
#	priv/gettext/nl/LC_MESSAGES/default.po
2026-04-28 17:50:19 +02:00

28 lines
677 B
Elixir

defmodule ClaperWeb.AudioSocket do
use Phoenix.Socket
channel "audio:*", ClaperWeb.AudioChannel
@impl true
def connect(%{"token" => token}, socket, _connect_info) do
case Phoenix.Token.verify(ClaperWeb.Endpoint, "audio_token", token, max_age: 86_400) do
{:ok, %{user_id: user_id, event_uuid: event_uuid}} ->
{:ok,
socket
|> assign(:user_id, user_id)
|> assign(:authorized_event_uuid, event_uuid)}
{:error, _reason} ->
:error
_ ->
:error
end
end
def connect(_params, _socket, _connect_info), do: :error
@impl true
def id(socket), do: "audio_socket:#{socket.assigns.user_id}"
end