Fix YouTube in attesa: disabilita auto_stop e ricrea broadcast chiusa
YouTube chiudeva la diretta (complete) senza ingest stabile; ora enable_auto_stop è false e SetupBroadcast.recreate! rigenera link/stream key. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -24,7 +24,7 @@ module Youtube
|
||||
),
|
||||
content_details: Google::Apis::YoutubeV3::LiveBroadcastContentDetails.new(
|
||||
enable_auto_start: true,
|
||||
enable_auto_stop: true
|
||||
enable_auto_stop: false
|
||||
)
|
||||
)
|
||||
result = client.insert_live_broadcast("snippet,status,contentDetails", broadcast)
|
||||
@@ -62,6 +62,7 @@ module Youtube
|
||||
|
||||
status = item.status.life_cycle_status.to_s
|
||||
return :live if status == "live"
|
||||
return :broadcast_ended if status == "complete"
|
||||
|
||||
stream_id = item.content_details&.bound_stream_id
|
||||
if stream_id.present?
|
||||
|
||||
@@ -7,11 +7,31 @@ module Youtube
|
||||
new(session, youtube_channel: youtube_channel).call
|
||||
end
|
||||
|
||||
# Nuova broadcast se YouTube ha chiuso la precedente (auto_stop / ingest perso).
|
||||
def self.recreate!(session, youtube_channel: nil)
|
||||
new(session, youtube_channel: youtube_channel).recreate!
|
||||
end
|
||||
|
||||
def initialize(session, youtube_channel: nil)
|
||||
@session = session
|
||||
@youtube_channel = youtube_channel
|
||||
end
|
||||
|
||||
def recreate!
|
||||
@session.reload
|
||||
return @session if @session.terminal?
|
||||
return @session unless @session.platform == "youtube"
|
||||
|
||||
Streams::YoutubeRelay.stop(@session)
|
||||
@session.update!(
|
||||
youtube_broadcast_id: nil,
|
||||
youtube_stream_id: nil,
|
||||
stream_key: nil,
|
||||
rtmp_url: nil
|
||||
)
|
||||
call
|
||||
end
|
||||
|
||||
def call
|
||||
@session.reload
|
||||
return @session if @session.terminal?
|
||||
|
||||
Reference in New Issue
Block a user