class Backup::Notifier::Campfire
Attributes
api_token[RW]
Campfire
api authentication token
room_id[RW]
Campfire
account’s room id
subdomain[RW]
Campfire
account’s subdomain
Public Class Methods
new(model, &block)
click to toggle source
Calls superclass method
Backup::Notifier::Base::new
# File lib/backup/notifier/campfire.rb, line 18 def initialize(model, &block) super instance_eval(&block) if block_given? end
Private Instance Methods
notify!(status)
click to toggle source
Notify the user of the backup operation results.
‘status` indicates one of the following:
‘:success` : The backup completed successfully. : Notification will be sent if `on_success` is `true`.
‘:warning` : The backup completed successfully, but warnings were logged. : Notification will be sent if `on_warning` or `on_success` is `true`.
‘:failure` : The backup operation failed. : Notification will be sent if `on_warning` or `on_success` is `true`.
# File lib/backup/notifier/campfire.rb, line 42 def notify!(status) send_message(message.call(model, status: status_data_for(status))) end
send_message(message)
click to toggle source
# File lib/backup/notifier/campfire.rb, line 46 def send_message(message) uri = "https://#{subdomain}.campfirenow.com/room/#{room_id}/speak.json" options = { headers: { "Content-Type" => "application/json" }, body: JSON.dump( message: { body: message, type: "Textmessage" } ) } options[:user] = api_token options[:password] = "x" # Basic Auth options[:expects] = 201 # raise error if unsuccessful Excon.post(uri, options) end