mirror of
				https://gitea.invidious.io/iv-org/invidious-copy-2023-06-08.git
				synced 2024-08-15 00:53:38 +00:00 
			
		
		
		
	Add support for '/embed/live_stream'
This commit is contained in:
		
							parent
							
								
									6215259565
								
							
						
					
					
						commit
						607d6125fc
					
				
					 1 changed files with 22 additions and 2 deletions
				
			
		| 
						 | 
				
			
			@ -559,7 +559,8 @@ get "/embed/:id" do |env|
 | 
			
		|||
 | 
			
		||||
  # YouTube embed supports `videoseries` with either `list=PLID`
 | 
			
		||||
  # or `playlist=VIDEO_ID,VIDEO_ID`
 | 
			
		||||
  if id == "videoseries"
 | 
			
		||||
  case id
 | 
			
		||||
  when "videoseries"
 | 
			
		||||
    url = ""
 | 
			
		||||
 | 
			
		||||
    if plid
 | 
			
		||||
| 
						 | 
				
			
			@ -584,7 +585,26 @@ get "/embed/:id" do |env|
 | 
			
		|||
    end
 | 
			
		||||
 | 
			
		||||
    next env.redirect url
 | 
			
		||||
  elsif id.size > 11
 | 
			
		||||
  when "live_stream"
 | 
			
		||||
    client = make_client(YT_URL)
 | 
			
		||||
    response = client.get("/embed/live_stream?channel=#{env.params.query["channel"]? || ""}")
 | 
			
		||||
    video_id = response.body.match(/"video_id":"(?<video_id>[a-zA-Z0-9_-]{11})"/).try &.["video_id"]
 | 
			
		||||
 | 
			
		||||
    env.params.query.delete_all("channel")
 | 
			
		||||
 | 
			
		||||
    if !video_id || video_id == "live_stream"
 | 
			
		||||
      error_message = "Video is unavailable."
 | 
			
		||||
      next templated "error"
 | 
			
		||||
    end
 | 
			
		||||
 | 
			
		||||
    url = "/embed/#{video_id}"
 | 
			
		||||
 | 
			
		||||
    if env.params.query.size > 0
 | 
			
		||||
      url += "?#{env.params.query}"
 | 
			
		||||
    end
 | 
			
		||||
 | 
			
		||||
    next env.redirect url
 | 
			
		||||
  when id.size > 11
 | 
			
		||||
    url = "/embed/#{id[0, 11]}"
 | 
			
		||||
 | 
			
		||||
    if env.params.query.size > 0
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue