Add Fortune module
This commit is contained in:
parent
9d15556045
commit
09e925d695
3 changed files with 20 additions and 3 deletions
4
bot.rb
4
bot.rb
|
@ -17,9 +17,9 @@ module Lain
|
|||
|
||||
$stderr.puts 'Loading modules...'
|
||||
|
||||
Config::Modules.each { |mod|
|
||||
Config::Modules.each { |mod, cfg|
|
||||
require_relative "modules/#{mod}"
|
||||
@modules[mod] = Modules.const_get(mod).new self
|
||||
@modules[mod] = Modules.const_get(mod).new(self, cfg)
|
||||
}
|
||||
|
||||
$stderr.puts 'Connecting...'
|
||||
|
|
|
@ -1,7 +1,8 @@
|
|||
module Lain
|
||||
module Modules
|
||||
class Base
|
||||
def initialize(lain)
|
||||
def initialize(lain, config)
|
||||
@config = config
|
||||
end
|
||||
|
||||
def on_message(muc, message)
|
||||
|
|
16
modules/Fortune.rb
Normal file
16
modules/Fortune.rb
Normal file
|
@ -0,0 +1,16 @@
|
|||
require 'xmpp4r/message'
|
||||
|
||||
require_relative '../module_base'
|
||||
|
||||
module Lain
|
||||
module Modules
|
||||
class Fortune < Base
|
||||
def on_message(muc, message)
|
||||
return unless message.type == :groupchat
|
||||
return unless /!fortune\b/ =~ message.body
|
||||
|
||||
muc.send(Jabber::Message.new(message.to, IO.popen(@config['command']).gets(sep=nil).chomp))
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
Reference in a new issue