summaryrefslogtreecommitdiffstats
path: root/rbjbbot.rb
diff options
context:
space:
mode:
Diffstat (limited to 'rbjbbot.rb')
-rwxr-xr-xrbjbbot.rb48
1 files changed, 48 insertions, 0 deletions
diff --git a/rbjbbot.rb b/rbjbbot.rb
new file mode 100755
index 0000000..05268cd
--- /dev/null
+++ b/rbjbbot.rb
@@ -0,0 +1,48 @@
+#! /usr/bin/ruby
+require 'rubygems'
+require 'xmpp4r'
+require 'xmpp4r/muc/helper/simplemucclient'
+include Jabber
+
+############## Configuration du bot #################
+ #
+mucjid = "" # JID du salon où connecter le bot #
+mucpass = "" # Mot de passe du salon #
+botnick = "" # Pseudo du bot #
+botjid = "" # JID du bot #
+botpass = "" # Mot de passe du bot #
+ #
+#####################################################
+
+
+begin
+
+xmpp = Client.new(JID::new(botjid))
+xmpp.connect
+xmpp.auth(botpass)
+
+muc = Jabber::MUC::SimpleMUCClient.new(xmpp)
+muc.join(Jabber::JID.new(mucjid + '/' + botnick),mucpass)
+ loop do
+ muc.on_message { |time,nick,text|
+ if nick != botnick
+ case text
+ when "!ping"
+ msg = nick + ', pong.'
+ when "!aide"
+ msg = nick + ', commandes valides : "!ping", "!aide", "!kick" + pseudo à kicker.'
+ when "!kick moi"
+ muc.kick nick, 'Tu me le demande si gentiment :D'
+ when /!kick+/
+ nickkick = text.gsub(/!kick /, "")
+ muc.kick nickkick, 'Demandé par ' + nick
+ when /Xtn-RubyBot+/
+ msg = nick + ', je ne te comprends pas, écris "!aide" pour avoir une liste des commandes valides.'
+ end
+ muc.say(msg)
+ end
+ }
+ sleep 1
+ end
+end
+