channel.rb