class PlayerMessageObserver

Public Instance Methods

update(time, message) click to toggle source
# File lib/terminal_player/site.rb, line 73
def update(time, message)
  if message['ICY']
    begin
      m = message.encode('UTF-8', 'binary', invalid: :replace, undef: :replace, replace: '')
      song = m[/StreamTitle='(.*?)';/, 1]
    rescue => e
      write "error '#{e}' with ICY message: #{m}"
    end
    @site.songs << song
    @site.song_changed
  elsif message['SPOTTY']
    @site.songs << message.gsub(/SPOTTY /, '')
    @site.song_changed
  elsif message['Cache ']
    write message
  end
end
write(message) click to toggle source
# File lib/terminal_player/site.rb, line 91
def write(message)
  print "\n<site-debug> #{message}\r"
end