Sha256: eef183cf8aeb8d03d795f4913c3226b89b83c9ca5604b978a1acb899298b9e82
Contents?: true
Size: 1.02 KB
Versions: 1
Compression:
Stored size: 1.02 KB
Contents
# Sms backend for logging outgoing sms instead of actually sending them class ActiveSMS::Backend::Logger < ActiveSMS::Backend::Base # Log level validation, all invalid values lead to ArgumentError. # Has anyone heard how to receive log levels from ruby logger itself? LOG_SEVERITY = [:debug, :info, :warn, :error, :fatal, :unknown].freeze # @param logger [::Logger] Class implementing logger interface # @param severity [Symbol] Severity to log with def initialize(logger: Logger.new(STDOUT), severity: :info) @logger = logger @severity = severity raise ArgumentError, "Invalid log severity" unless LOG_SEVERITY.include?(@severity) return if @logger.respond_to?(@severity) raise ArgumentError, "Class should implement logger interface" end # Method that sends phone and text to logger # # @param phone [String] Phone number to send sms # @param text [String] Sms text def send_sms(phone, text) @logger.send(@severity, "[SMS] #{phone}: #{text}") respond_with_status :success end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
active_sms-0.2.1 | lib/active_sms/backend/logger.rb |