Files
MatchLiveTv/backend/app/services/sessions/start.rb
Emiliano Frascaro bba6df52c0 Initial commit: monorepo Match Live TV.
Rails API, app Flutter, infrastruttura Docker/MediaMTX, sito marketing e documentazione di deploy.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-26 17:45:37 +02:00

22 lines
568 B
Ruby

module Sessions
class Start
def initialize(session)
@session = session
end
def call
@session.match.team.entitlements.assert_concurrent_stream!(excluding_session: @session)
@session.begin_connect! if @session.may_begin_connect?
@session.update!(status: "connecting") unless @session.connecting?
broadcast_status("connecting")
@session
end
private
def broadcast_status(status)
SessionChannel.broadcast_message(@session, { type: "stream_event", event: "starting", status: status })
end
end
end