Module: Adhearsion

Extended by:
ActiveSupport::Autoload
Defined in:
lib/adhearsion/foundation/custom_daemonizer.rb,
lib/adhearsion.rb,
lib/adhearsion/call.rb,
lib/adhearsion/calls.rb,
lib/adhearsion/events.rb,
lib/adhearsion/plugin.rb,
lib/adhearsion/router.rb,
lib/adhearsion/version.rb,
lib/adhearsion/logging.rb,
lib/adhearsion/console.rb,
lib/adhearsion/process.rb,
lib/adhearsion/generators.rb,
lib/adhearsion/initializer.rb,
lib/adhearsion/router/route.rb,
lib/adhearsion/cli_commands.rb,
lib/adhearsion/outbound_call.rb,
lib/adhearsion/configuration.rb,
lib/adhearsion/call_controller.rb,
lib/adhearsion/linux_proc_name.rb,
lib/adhearsion/script_ahn_loader.rb,
lib/adhearsion/punchblock_plugin.rb,
lib/adhearsion/plugin/collection.rb,
lib/adhearsion/plugin/initializer.rb,
lib/adhearsion/generators/generator.rb,
lib/adhearsion/call_controller/dial.rb,
lib/adhearsion/call_controller/input.rb,
lib/adhearsion/call_controller/output.rb,
lib/adhearsion/call_controller/record.rb,
lib/adhearsion/call_controller/utility.rb,
lib/adhearsion/call_controller/menu_dsl.rb,
lib/adhearsion/generators/app/app_generator.rb,
lib/adhearsion/call_controller/menu_dsl/menu.rb,
lib/adhearsion/punchblock_plugin/initializer.rb,
lib/adhearsion/generators/plugin/plugin_generator.rb,
lib/adhearsion/call_controller/menu_dsl/menu_builder.rb,
lib/adhearsion/call_controller/menu_dsl/calculated_match.rb,
lib/adhearsion/call_controller/menu_dsl/match_calculator.rb,
lib/adhearsion/generators/controller/controller_generator.rb,
lib/adhearsion/call_controller/menu_dsl/range_match_calculator.rb,
lib/adhearsion/call_controller/menu_dsl/fixnum_match_calculator.rb,
lib/adhearsion/call_controller/menu_dsl/string_match_calculator.rb,
lib/adhearsion/call_controller/menu_dsl/calculated_match_collection.rb

Overview

This is largely based on the Daemonize library by Travis Whitton and Judson Lester. grub.ath.cx/daemonize. I cleaned it up a bit to meet Adhearsion's quality standards.

Defined Under Namespace

Modules: CLI, CustomDaemonizer, Generators, LinuxProcName, Logging, ScriptAhnLoader Classes: Call, CallController, Calls, Configuration, Console, Events, Initializer, OutboundCall, Plugin, Process, PunchblockPlugin, Router

Constant Summary

Error =
Class.new StandardError
VERSION =
'2.0.0'

Class Method Summary (collapse)

Class Method Details

+ (Object) active_calls



80
81
82
83
84
85
86
# File 'lib/adhearsion.rb', line 80

def active_calls
  if instance_variable_defined?(:@calls) && @calls.alive?
    @calls
  else
    @calls = Calls.new
  end
end

+ (Object) ahn_root=(path)



45
46
47
# File 'lib/adhearsion.rb', line 45

def ahn_root=(path)
  Adhearsion.config[:platform].root = path.nil? ? nil : File.expand_path(path)
end

+ (Object) config(&block)



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

def config(&block)
  @config ||= initialize_config
  block_given? and yield @config
  @config
end

+ (Object) config=(config)



68
69
70
# File 'lib/adhearsion.rb', line 68

def config=(config)
  @config = config
end

+ (Object) environments



64
65
66
# File 'lib/adhearsion.rb', line 64

def environments
  config.valid_environments
end

+ (Object) initialize_config



55
56
57
58
59
60
61
62
# File 'lib/adhearsion.rb', line 55

def initialize_config
  _config = Configuration.new
  env = ENV['AHN_ENV'] || ENV['RAILS_ENV']
  env = env.to_sym if env.respond_to? :to_sym
  env = nil unless _config.valid_environment? env
  _config.platform.environment = env if env
  _config
end

+ (Object) router(&block)



72
73
74
# File 'lib/adhearsion.rb', line 72

def router(&block)
  @router ||= Router.new(&block || Proc.new {})
end

+ (Object) router=(other)



76
77
78
# File 'lib/adhearsion.rb', line 76

def router=(other)
  @router = other
end

+ (Object) status



88
89
90
# File 'lib/adhearsion.rb', line 88

def status
  Adhearsion::Process.state_name
end