Sha256: 619da1a1af8ce706d6ff75e927885c10df26fcff6bd6007b9662826ef2d61498

Contents?: true

Size: 1003 Bytes

Versions: 1

Compression:

Stored size: 1003 Bytes

Contents

#!/usr/bin/env ruby

require 'botolo'
require 'openssl'
require 'codesake_commons'

DEFAULT_BEHAVIOUR = "./lib/botolo/bot/behaviour.rb"
BOTOLO_PID = File.join(".", "botolo.pid") 

OpenSSL::SSL::VERIFY_PEER = OpenSSL::SSL::VERIFY_NONE

$logger  = Codesake::Commons::Logging.instance
trap("INT")   { @bot.stop; $logger.helo('bot is shutting down'); Kernel.exit(0) }

behaviour_file = DEFAULT_BEHAVIOUR
config_file = nil
config_file = ARGV[0] if ARGV.count == 1

$logger.die "usage: botolo bot_configuration_file" if config_file.nil?

$logger.log Process.pid
son = Process.fork {
  $logger.helo "booting botolo v#{Botolo::VERSION} (C) 2013 paolo@armoredcode.com", BOTOLO_PID
  $logger.log "daemonizing (pid=#{Process.pid}). PID file is #{BOTOLO_PID}"


  @bot = Botolo::Bot::Engine.new({:config=>config_file})
  $logger.log "#{@bot.name} is online" if @bot.online?
  $logger.log "#{@bot.name} is offline" unless @bot.online?
  @bot.run if @bot.online?
  @bot.infinite_loop
}

Process.detach(son)
sleep 5


Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
botolo-0.30.0 bin/botolo