Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env ruby
- require 'xmpp4r'
- require 'xmpp4r/muc'
- if ARGV.size != 3
- puts "Usage: #{$0} <jid> <password> <room@conference/nick>"
- exit
- end
- wortschatz = {
- "^[Ss]nailbot\?$" => "Stets zu Diensten!",
- "^olo$" => ":)",
- "^[Rr]uby\?$" => "<3",
- ".*\s+[\.!\?]$" => "Plenkten Sie da etwa?",
- "^avocados purses bangers$" => "latrins germans meteors snails divorces bards hitler DÜSSELDORF! levithans parrots DÜSSELDORF!",
- "^[Ss]nail$" => "Ah snail a snail! Snail, a snail! Ooooh, it's a snail!",
- "^/me strokes [Ss]nailbot$" => "/me snails loudly.",
- }
- #Jabber::debug = true
- client = Jabber::Client.new(Jabber::JID.new(ARGV[0]))
- client.connect
- client.auth(ARGV[1])
- muc = Jabber::MUC::SimpleMUCClient.new(client)
- muc.join(Jabber::JID.new(ARGV[2]))
- client.send(Jabber::Presence.new.set_show(nil).set_status('I\'m a bot made of ruby').set_to('ARGV[2]'))
- run = true
- while run == true do
- muc.on_message do |time,nick,text|
- unless time
- puts "[#{Time.now}] #{nick}: #{text}"
- if text.match(/^(S|s)nailbot(:|,|\s?)\s?(R|r)aus\shier(\s?|!|.|\s)$/)
- muc.say("Ok.")
- run = false
- end
- wortschatz.each do |trigger,antwort|
- if text.match(trigger)
- puts "match!"
- muc.say(antwort)
- end
- end
- end
- end
- end
Add Comment
Please, Sign In to add comment