Sha256: b8ad8b621ec47029aaea6992355ff4353f312facf72a66e3b81d29c5c726c783

Contents?: true

Size: 1.13 KB

Versions: 1

Compression:

Stored size: 1.13 KB

Contents

require 'awesome_print'
require 'cinch'
require 'octokit'
require 'dotenv'

require 'cinch/plugins/management'
require 'cinch/plugins/octospy'
require 'octospy/configurable'
require 'octospy/recordable'
require 'octospy/parser'
require 'octospy/worker'
require 'octospy/octokit/client'

module Octospy
  class << self
    include Octospy::Configurable

    def parse(event)
      Octospy::Parser.new(event).parse
    end

    def worker(repositories, &block)
      Octospy::Worker.new(repositories, &block)
    end

    def irc_bot
      Octokit.configure do |c|
        c.api_endpoint = Octospy.github_api_endpoint
        c.web_endpoint = Octospy.github_web_endpoint
        c.login = Octospy.github_login
        c.access_token = Octospy.github_token
      end

      Cinch::Bot.new do
        configure do |c|
          c.server = Octospy.server
          c.nick = Octospy.nick
          c.channels = Octospy.channels
          c.plugins.plugins = [
            Cinch::Plugins::Management,
            Cinch::Plugins::Octospy
          ]
        end
      end
    end

    def run
      self.irc_bot.start
    end
  end

  Dotenv.load
  Octospy.setup
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
octospy-0.0.2 lib/octospy.rb