summaryrefslogtreecommitdiff
path: root/data/rbot
diff options
context:
space:
mode:
authorTom Gilbert <tom@linuxbrit.co.uk>2005-12-01 20:59:55 +0000
committerTom Gilbert <tom@linuxbrit.co.uk>2005-12-01 20:59:55 +0000
commit5e8ddb21367309624a05ce45c7facee6620b5edf (patch)
tree474f275e49e783c26702cd53eee5a5dc469397c1 /data/rbot
parenta8e5661b860bedb20475933d46a0cf3693faf112 (diff)
Donated by these lovely chaps:
http://websvn.kde.org/trunk/extragear/multimedia/amarok/src/scripts/rbot/grouphug/ Thanks, eean :)
Diffstat (limited to 'data/rbot')
-rw-r--r--data/rbot/plugins/grouphug.rb33
1 files changed, 33 insertions, 0 deletions
diff --git a/data/rbot/plugins/grouphug.rb b/data/rbot/plugins/grouphug.rb
new file mode 100644
index 00000000..73c21eee
--- /dev/null
+++ b/data/rbot/plugins/grouphug.rb
@@ -0,0 +1,33 @@
+# Plugin for the Ruby IRC bot (http://linuxbrit.co.uk/rbot/)
+# (c) 2005 Mark Kretschmann <markey@web.de>
+# Licensed under GPL V2.
+
+require "net/http"
+
+
+class GrouphugPlugin < Plugin
+ def help( plugin, topic="" )
+ "Grouphug plugin. Confess! Usage: 'confess' for random confession, 'confess <number>' for specific one."
+ end
+
+ def privmsg( m )
+ h = Net::HTTP.new( "grouphug.us", 80 )
+ path = "/random"
+ path = "/confessions/#{m.params()}" if m.params()
+ data = bot.httputil.get(URI.parse("http://grouphug.us/#{path}"))
+
+ reg = Regexp.new( '(<td class="conf-text")(.*?)(<p>)(.*?)(</p>)', Regexp::MULTILINE )
+ confession = reg.match( data )[4]
+ confession.gsub!( /<.*?>/, "" ) # Remove html tags
+ confession.gsub!( "\t", "" ) # Remove tab characters
+
+ @bot.say(m.replyto, confession)
+ end
+end
+
+
+plugin = GrouphugPlugin.new
+
+plugin.register("grouphug")
+plugin.register("confess")
+