Class: DI
- Includes:
- AudioAddict
- Defined in:
- lib/terminal_player/di/di.rb
Instance Attribute Summary
Attributes inherited from Site
#channels, #current_channel, #is_di_plus, #is_mplayer, #is_spotify, #name, #player, #songs
Instance Method Summary collapse
- #get_channels ⇒ Object
-
#initialize(options) ⇒ DI
constructor
A new instance of DI.
Methods included from AudioAddict
Methods inherited from Site
Constructor Details
#initialize(options) ⇒ DI
Returns a new instance of DI.
4 5 6 7 |
# File 'lib/terminal_player/di/di.rb', line 4 def initialize() p = ![:url]['premium'].nil? super(, p ? 'di-hi' : 'di-lo') end |
Instance Method Details
#get_channels ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 |
# File 'lib/terminal_player/di/di.rb', line 9 def get_channels @channels = [] f = open('http://www.di.fm') page = f.read chan_ids = page.scan(/data-channel-id="(\d+)"/).flatten chans = page.scan(/data-tunein-url="http:\/\/www.di.fm\/(.*?)"/).flatten zipped = chan_ids.zip(chans) zipped.each do |z| @channels << {id: z[0], name: z[1]} end @channels.sort_by! {|k, _| k[:name]} @channels.uniq! {|k, _| k[:name]} end |