Module: Blaze

Extended by:
Blaze
Included in:
Blaze
Defined in:
lib/blaze.rb,
lib/blaze/version.rb,
lib/blaze/configuration.rb

Defined Under Namespace

Classes: Configuration

Constant Summary collapse

VERSION =
"0.0.1"

Instance Method Summary collapse

Instance Method Details

#configurationObject


13
14
15
# File 'lib/blaze.rb', line 13

def configuration
  @configuration ||= Configuration.new
end

#configure {|configuration| ... } ⇒ Object

Yields:


9
10
11
# File 'lib/blaze.rb', line 9

def configure
  yield configuration
end

#speak(message) ⇒ Object


17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# File 'lib/blaze.rb', line 17

def speak(message)
  configuration.validate!
  port = configuration.ssl ? 443 : 80

  req = Net::HTTP::Post.new("/room/#{configuration.room_id}/speak.json")
  req.basic_auth configuration.token, 'X'
  req.body = { :message => { :body => message } }.to_json
  req.content_type = "application/json"
  req["User-Agent"] = "Blaze"

  res = Net::HTTP.start("#{configuration.}.campfirenow.com", port, :use_ssl => configuration.ssl) do |http|
    http.request(req)
  end

  if res.is_a?(Net::HTTPSuccess)
    warn "Campfire message sent!"
  else
    warn "Campfire communication failed!"
    warn res.inspect
    warn res.body.inspect
  end
end