Class: BotPlatform::Dialogs::Prompts::NumberPrompt
- Defined in:
- lib/bot_platform/dialogs/prompts/number_prompt.rb
Constant Summary
Constants inherited from Dialog
Instance Attribute Summary collapse
-
#default_locale ⇒ Object
readonly
Returns the value of attribute default_locale.
Attributes inherited from Prompt
Attributes inherited from Dialog
Instance Method Summary collapse
-
#initialize(dialog_id, validator = nil, default_locale = nil) ⇒ NumberPrompt
constructor
A new instance of NumberPrompt.
- #on_prompt(ctx, state, options, is_retry) ⇒ Object
- #on_recognize(ctx, state, options) ⇒ Object
Methods inherited from Prompt
#continue, #repromp, #resume, #start
Methods inherited from Dialog
#continue, #reprompt, #resume, #start, #stop
Methods included from Asserts
#assert_activity_is_not_null, #assert_activity_list_is_not_null, #assert_activity_type_is_not_null, #assert_context_is_not_null, #assert_conversation_reference_is_not_null, #assert_dialog_context_is_valid, #assert_dialog_id_is_valid, #assert_dialog_is_uniq, #assert_dialog_is_valid, #assert_dialog_set_is_valid, #assert_dialog_state_is_valid, #assert_is_not_empty, #assert_middleware_is_not_null, #assert_middleware_list_is_not_null, #assert_prompt_options_is_valid, #assert_turn_context_is_valid, #assert_waterfall_step_context_is_valid
Constructor Details
#initialize(dialog_id, validator = nil, default_locale = nil) ⇒ NumberPrompt
Returns a new instance of NumberPrompt.
9 10 11 12 |
# File 'lib/bot_platform/dialogs/prompts/number_prompt.rb', line 9 def initialize(dialog_id, validator=nil, default_locale=nil) super(dialog_id, validator) @default_locale = default_locale end |
Instance Attribute Details
#default_locale ⇒ Object (readonly)
Returns the value of attribute default_locale.
7 8 9 |
# File 'lib/bot_platform/dialogs/prompts/number_prompt.rb', line 7 def default_locale @default_locale end |
Instance Method Details
#on_prompt(ctx, state, options, is_retry) ⇒ Object
14 15 16 17 18 19 20 21 22 23 24 |
# File 'lib/bot_platform/dialogs/prompts/number_prompt.rb', line 14 def on_prompt(ctx, state, , is_retry) assert_turn_context_is_valid ctx #assert_dialog_instance_state_is_valid state if is_retry && !.retry_prompt.nil? ctx.send_activity .retry_prompt else ctx.send_activity .prompt end end |
#on_recognize(ctx, state, options) ⇒ Object
26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
# File 'lib/bot_platform/dialogs/prompts/number_prompt.rb', line 26 def on_recognize(ctx, state, ) assert_turn_context_is_valid ctx result = PromptRecognizerResult.new if ctx.activity.type == BotPlatform::Activity::TYPES[:message] = ctx.activity.text if !.nil? && !.empty? && =~ /\A[-+]?[0-9]*\.?[0-9]+\Z/ result.succeeded = true result.value = .to_i end end return result end |