class Ferryman::Dispatcher
Attributes
config[R]
Public Class Methods
new()
click to toggle source
# File lib/ferryman.rb, line 113 def initialize @config = Config.new end
Public Instance Methods
deliver(phone_number, *args)
click to toggle source
# File lib/ferryman.rb, line 117 def deliver(phone_number, *args) @config.rules.each do |rule| next unless rule.accept?(phone_number) rule.providers.each do |provider_name| provider = @config.providers[provider_name] params = [phone_number] + args begin return provider.call(*params) rescue DeliveryError next end end end nil end