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>
This commit is contained in:
2026-05-26 17:45:37 +02:00
commit bba6df52c0
381 changed files with 20599 additions and 0 deletions

View File

@@ -0,0 +1,17 @@
class NotifyStreamHealthJob
include Sidekiq::Job
def perform(session_id)
session = StreamSession.find_by(id: session_id)
return unless session&.live?
camera = session.device_states.find_by(device_role: "camera")
return unless camera&.current_bitrate && camera.current_bitrate < session.target_bitrate * 0.5
SessionChannel.broadcast_message(session, {
type: "stream_event",
event: "quality_degraded",
bitrate: camera.current_bitrate
})
end
end