Class: YoutubeAudio::UrlDecipher

Inherits:
Object
  • Object
show all
Defined in:
lib/youtube_audio/url_decipher.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(cipher, script_player_url:) ⇒ UrlDecipher

Returns a new instance of UrlDecipher.



7
8
9
10
# File 'lib/youtube_audio/url_decipher.rb', line 7

def initialize(cipher, script_player_url:)
  @cipher = cipher
  @script_player_url = script_player_url
end

Instance Attribute Details

#cipherObject (readonly)

Returns the value of attribute cipher.



5
6
7
# File 'lib/youtube_audio/url_decipher.rb', line 5

def cipher
  @cipher
end

#script_player_urlObject (readonly)

Returns the value of attribute script_player_url.



5
6
7
# File 'lib/youtube_audio/url_decipher.rb', line 5

def script_player_url
  @script_player_url
end

Instance Method Details

#decipherObject



12
13
14
15
16
17
18
# File 'lib/youtube_audio/url_decipher.rb', line 12

def decipher
  decoded = CGI.parse(@cipher)

  sign = Decipher.new(script_player_url).decipher(decoded.dig('s').first)

  decoded.dig('url').first + '&' + decoded.dig('sp').first + "=#{sign}"
end