# # = alingrce.rb # # This is an ALICE bot based on pandrabots.com # require 'lingrvant' class Alingrce < Lingrvant::Plugin def on_user(room, mes) msg = talk_to_alingrce(mes['text']) room.say msg if msg end def on_private(room, mes) msg = talk_to_alingrce(mes['text']) room.say(msg, mes['occupant_id']) if msg end private def talk_to_alingrce(text='') return if text.empty? site = 'www.pandorabots.com' page = '/pandora/talk?botid=9c4fce9e5e36d3f5' options = { 'botcust2' => 'd41c04ee3f8d0032' } param = '' options['message'] = text options.each {|k,v| param << "#{k}=#{v}&"} Net::HTTP.version_1_2 Net::HTTP.start(site, 80) {|http| response = http.post(page, param) # p response.body if response.body.match(/Alingrce:<\/b>([^<]+) 'Alingrce', :rooms => { 'alingrce' => {} } } params[:apikey] = ARGV[0] bot = Lingrvant::Bot.new params bot.work