class FlowdockRails::Flowdock

Attributes

source[R]

Public Class Methods

new(source) click to toggle source
# File lib/flowdock_rails/models/flowdock.rb, line 7
def initialize(source)
  @source = source
  @flow_token = FlowdockRails.configuration.send(source)
end

Public Instance Methods

enabled?() click to toggle source
# File lib/flowdock_rails/models/flowdock.rb, line 26
def enabled?
  FlowdockRails.configuration.valid_env? &&
    FlowdockRails.configuration.active?
end
post_message(message) click to toggle source
# File lib/flowdock_rails/models/flowdock.rb, line 16
def post_message(message)
  return unless enabled?
  raise 'Instance is not ready' unless ready?
  params = format_params(message)
  response = post('/messages', params)
  message.thread_id = response.body['thread_id']
  message.sent
  message
end
ready?() click to toggle source
# File lib/flowdock_rails/models/flowdock.rb, line 12
def ready?
  !@flow_token.nil?
end

Private Instance Methods

format_params(message) click to toggle source
# File lib/flowdock_rails/models/flowdock.rb, line 33
def format_params(message)
  {
    thread_id: message.thread_id, content: message.text.to_s,
    tags: message.format_tags, flow_token: @flow_token, event: 'message'
  }.reject { |_, v| v.nil? }
end