Class: Nautilfer

Inherits:
Object
  • Object
show all
Defined in:
lib/nautilfer.rb,
lib/nautilfer/version.rb,
lib/nautilfer/adapters/base.rb,
lib/nautilfer/adapters/slack.rb,
lib/nautilfer/adapters/teams.rb,
lib/nautilfer/adapters/chatwork.rb

Defined Under Namespace

Modules: Adapters Classes: Configuration, Error

Constant Summary collapse

VERSION =
"0.4.1"

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(endpoint:, adapter: Adapters::Teams.new, environment: nil, enabled_environments: nil, disabled_environments: nil, message_template: nil) ⇒ Nautilfer

Returns a new instance of Nautilfer.



38
39
40
41
42
43
44
45
46
47
# File 'lib/nautilfer.rb', line 38

def initialize(endpoint:, adapter: Adapters::Teams.new, environment: nil, enabled_environments: nil, disabled_environments: nil, message_template: nil)
  config = self.class.configuration

  @endpoint = URI.parse(endpoint)
  @adapter = resolve_adapter(adapter)
  @environment = environment || config.environment || ENV['NAUTILFER_ENV'] || ENV['RAILS_ENV'] || ENV['RACK_ENV']
  @enabled_environments = normalize_env_list(enabled_environments, config.enabled_environments)
  @disabled_environments = normalize_env_list(disabled_environments, config.disabled_environments)
  @message_template = resolve_message_template(message_template, config)
end

Class Method Details

.configurationObject



26
27
28
# File 'lib/nautilfer.rb', line 26

def self.configuration
  @configuration ||= Configuration.new
end

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

Yields:



30
31
32
# File 'lib/nautilfer.rb', line 30

def self.configure
  yield(configuration)
end

.reset_configuration!Object



34
35
36
# File 'lib/nautilfer.rb', line 34

def self.reset_configuration!
  @configuration = Configuration.new
end

Instance Method Details

#notify(message) ⇒ Object



49
50
51
52
53
54
# File 'lib/nautilfer.rb', line 49

def notify(message)
  return if notifications_disabled?

  payload, headers = build_payload(message)
  perform_request(payload, headers)
end