class Ruboty::Gamification::Client
Constants
- ISSUES_URL
Public Class Methods
new(gamification)
click to toggle source
# File lib/ruboty/gamification/client.rb, line 9 def initialize(gamification) @gamification = gamification end
Public Instance Methods
decrement(message)
click to toggle source
# File lib/ruboty/gamification/client.rb, line 24 def decrement(message) name = message.from_name message.reply(reply_message(:decrement ,message)) message.reply("#{name}--") end
increment(message)
click to toggle source
# File lib/ruboty/gamification/client.rb, line 18 def increment(message) name = message.from_name message.reply(reply_message(:increment ,message)) message.reply("#{name}++") end
reload(message)
click to toggle source
# File lib/ruboty/gamification/client.rb, line 30 def reload(message) message.reply("reload start") @gamification.actions.clear load(:increment) load(:decrement) message.reply("reload done") end
setup()
click to toggle source
# File lib/ruboty/gamification/client.rb, line 13 def setup load(:increment) load(:decrement) end
Private Instance Methods
connection()
click to toggle source
# File lib/ruboty/gamification/client.rb, line 65 def connection Faraday.new do |connection| connection.adapter :net_http connection.response :json end end
get(params)
click to toggle source
# File lib/ruboty/gamification/client.rb, line 61 def get(params) connection.get(ISSUES_URL, params) end
load(label)
click to toggle source
# File lib/ruboty/gamification/client.rb, line 39 def load(label) get(labels: label).body.each do |data| pattern = /#{Regexp.escape(data["title"])}$/ @gamification.on( pattern, name: "#{label}", description: "#{label} score (https://github.com/yoshiori/ruboty-gamification/issues)", ) reply_messages[label][data["title"]] = data["body"] end end
reply_message(label, message)
click to toggle source
# File lib/ruboty/gamification/client.rb, line 51 def reply_message(label, message) if /\A@?#{Regexp.escape(message.robot.name)}:?\s*(.*)/ =~ message.body reply_messages[label][$1] end end
reply_messages()
click to toggle source
# File lib/ruboty/gamification/client.rb, line 57 def reply_messages @reply_messages ||= {increment: {}, decrement: {}} end