class Adhearsion::CallController::MenuDSL::CalculatedMatch

Attributes

block[R]
exact_matches[R]
match_payload[R]
pattern[R]
potential_matches[R]
query[R]

Public Class Methods

failed_match!(pattern, query, match_payload) click to toggle source
# File lib/adhearsion/call_controller/menu_dsl/calculated_match.rb, line 8
def self.failed_match!(pattern, query, match_payload)
  new :pattern => pattern, :query => query, :match_payload => match_payload
end
new(options = {}) click to toggle source
# File lib/adhearsion/call_controller/menu_dsl/calculated_match.rb, line 14
def initialize(options = {})
  @pattern, @query, @match_payload, @block = options.values_at :pattern, :query, :match_payload, :block
  @potential_matches  = options[:potential_matches] ? Array(options[:potential_matches]) : []
  @exact_matches      = options[:exact_matches] ? Array(options[:exact_matches]) : []
end

Public Instance Methods

exact_match?() click to toggle source
# File lib/adhearsion/call_controller/menu_dsl/calculated_match.rb, line 20
def exact_match?
  exact_matches.any?
end
failed_match?() click to toggle source
# File lib/adhearsion/call_controller/menu_dsl/calculated_match.rb, line 28
def failed_match?
  !(potential_match? || exact_match?)
end
potential_match?() click to toggle source
# File lib/adhearsion/call_controller/menu_dsl/calculated_match.rb, line 24
def potential_match?
  potential_matches.any?
end
type_of_match() click to toggle source
# File lib/adhearsion/call_controller/menu_dsl/calculated_match.rb, line 32
def type_of_match
  if exact_match?
    :exact
  elsif potential_match?
    :potential
  end
end