class Driftwood::Plugin::Netserv

Public Class Methods

new(config=nil, slack=nil, bigquery=nil) click to toggle source
Calls superclass method Driftwood::Plugin::new
# File lib/driftwood/plugin/netserv.rb, line 3
def initialize(config=nil, slack=nil, bigquery=nil)
  super(config, slack, bigquery)
  @about   = 'Provides basic network services, like ping, echo, version.'
  @usage   = 'Available commands: hello, ping, echo <message>, version.'

  @slack.register_handler('message') do |team_id, event_data|
    next unless @slack.to_me?(event_data)

    user = event_data['user']
    text = event_data['text']

    case text
    when /^hello/i
      @slack.send_response(team_id, user, "Hi there, #{@slack.real_name(team_id, user)}!")
    when /^ping$/i
      @slack.send_response(team_id, user, "Pong")
    when /^echo (.*)/i
      @slack.send_response(team_id, user, "Echo response: #{$1}")
    when /^version$/i
      @slack.send_response(team_id, user, "Driftwood v#{Driftwood::VERSION}")
    end
  end

end