class Focus::ChangeSlackDoNotDisturb

Public Instance Methods

perform() click to toggle source
# File lib/focus/actions/change_slack_do_not_disturb.rb, line 3
def perform
  res = Utils::WebClient.post(url)
  fail_action!(error: res) unless res.success?
end

Private Instance Methods

action() click to toggle source
# File lib/focus/actions/change_slack_do_not_disturb.rb, line 22
def action
  context.enabled ? "dnd.setSnooze" : "dnd.endSnooze"
end
base_url() click to toggle source
# File lib/focus/actions/change_slack_do_not_disturb.rb, line 18
def base_url
  "#{config.slack_api_url}/#{action}?token=#{config.slack_token}"
end
url() click to toggle source
# File lib/focus/actions/change_slack_do_not_disturb.rb, line 10
def url
  if context.enabled
    "#{base_url}&num_minutes=#{focus_minutes}"
  else
    base_url
  end
end