Class: AdhearsionASR::PromptBuilder
- Inherits:
-
Object
- Object
- AdhearsionASR::PromptBuilder
- Defined in:
- lib/adhearsion-asr/prompt_builder.rb
Instance Method Summary collapse
- #execute(controller) ⇒ Object
-
#initialize(output_document, grammars, options) ⇒ PromptBuilder
constructor
A new instance of PromptBuilder.
Constructor Details
#initialize(output_document, grammars, options) ⇒ PromptBuilder
Returns a new instance of PromptBuilder.
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/adhearsion-asr/prompt_builder.rb', line 5 def initialize(output_document, grammars, ) = { mode: [:mode] || :dtmf, initial_timeout: timeout([:timeout] || Plugin.config.timeout), inter_digit_timeout: timeout([:inter_digit_timeout] || Plugin.config.inter_digit_timeout), max_silence: timeout([:timeout] || Plugin.config.timeout), min_confidence: Plugin.config.min_confidence, sensitivity: Plugin.config.sensitivity, grammars: grammars, recognizer: Plugin.config.recognizer, language: Plugin.config.input_language, terminator: [:terminator] }.merge([:input_options] || {}) @prompt = if output_document || [:render_document] = { render_document: [:render_document] || {value: output_document}, renderer: Adhearsion.config.platform.media.default_renderer, voice: Adhearsion.config.platform.media.default_voice }.merge([:output_options] || {}) Punchblock::Component::Prompt.new , , barge_in: .has_key?(:interruptible) ? [:interruptible] : true else Punchblock::Component::Input.new end end |
Instance Method Details
#execute(controller) ⇒ Object
32 33 34 35 36 37 38 |
# File 'lib/adhearsion-asr/prompt_builder.rb', line 32 def execute(controller) controller.execute_component_and_await_completion @prompt result @prompt.complete_event.reason rescue Adhearsion::Call::ExpiredError raise Adhearsion::Call::Hangup end |