Sha256: 62b93ec41cadfcbfb138d09283e83b4bc04e4c8bb23799b607d3f255775bf9f6
Contents?: true
Size: 1.26 KB
Versions: 2
Compression:
Stored size: 1.26 KB
Contents
module Voicemail class MailboxController < ApplicationController def run if mailbox play_greeting fail_auth unless authenticate play_number_of_messages main_menu else mailbox_not_found end end def authenticate current_tries = 0 auth_ok = false while current_tries < config.mailbox.pin_tries input = ask config.mailbox.please_enter_pin, terminator: "#", timeout: config.prompt_timeout logger.info input.to_s logger.info mailbox[:pin].to_s auth_ok = true if input.to_s == mailbox[:pin].to_s break if auth_ok play config.mailbox.pin_wrong current_tries += 1 end auth_ok end def play_number_of_messages number = storage.count_new_messages(mailbox[:id]) if number > 0 play config.mailbox.number_before play_numeric number play config.mailbox.number_after else play config.messages.no_new_messages end end private def play_greeting play config.mailbox.greeting_message end def mailbox_not_found play config.mailbox_not_found hangup end def fail_auth play config.mailbox.could_not_auth hangup end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
voicemail-0.2.0 | lib/voicemail/mailbox_controller.rb |
voicemail-0.1.0 | lib/voicemail/mailbox_controller.rb |