Skip to content

IdV OTP delivery method selection#1605

Merged
jmhooper merged 1 commit intomasterfrom
jmhooper-idv-otp-delivery-method-selection
Aug 14, 2017
Merged

IdV OTP delivery method selection#1605
jmhooper merged 1 commit intomasterfrom
jmhooper-idv-otp-delivery-method-selection

Conversation

@jmhooper
Copy link
Contributor

Allow OTP delivery method selection during IdV

Why: Prior to this commit, the OTP delivery method was the user's
preference for their 2FA phone. The users phone number of record may not
have the same capabilities as the user's 2FA phone. This commit allows
the user to select a delivery method that is different than their 2FA
OTP delivery method.

Disable voice OTP in IdV when it's unsupported

Why: If the user enters a phone that we can't voice call, we want to
disable the option to make it clear that it is unavailable.

Add delivery method arg to phone confirmation

Why: On screens where the user selects a delivery method that may
not correspond to their delivery preference (e.g. IdV phone
confirmation), then we want to convey their delivery preference to the
prommpt_to_confirm method so that it can use that delivery method if
it is available.

Add context awareness to OTP selection form

Why: We don't want the OTP delivery selection form to update the
user's OTP delivery method preference in the IdV context since that is a
one-time thing. This has the additional benefit of letting us refactor
controllers so they can use the analytics params directly from the form
instead of having to merge in the context.

@jmhooper
Copy link
Contributor Author

Screenshots:

image

image

@jmhooper
Copy link
Contributor Author

Looks like merging master into my branch melted on Travis

@jmhooper
Copy link
Contributor Author

It was a bug in the code that I used to fix the reek issue in the PhoneConfirmation concern. Fixed and back to ready for review.

Copy link
Contributor

@zachmargolis zachmargolis left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, one question about naming but not a blocker

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

prefered_delivery_method seems a little weird to me in that it's different from the current_user.otp_delivery_preference ?

Maybe this should be selected_delivery_method or chosen_delivery_method ?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good point. Commit to change it pushed just now

@jmhooper jmhooper force-pushed the jmhooper-idv-otp-delivery-method-selection branch from 6f41905 to 3132e46 Compare August 11, 2017 18:02
**Why**: Prior to this commit, the OTP delivery method was the user's
preference for their 2FA phone. The users phone number of record may not
have the same capabilities as the user's 2FA phone. This commit allows
the user to select a delivery method that is different than their 2FA
OTP delivery method.

Add context awareness to OTP selection form

**Why**: We don't want the OTP delivery selection form to update the
user's OTP delivery method preference in the IdV context since that is a
one-time thing. This has the additional benefit of letting us refactor
controllers so they can use the analytics params directly from the form
instead of having to merge in the context.

Add delivery method arg to phone confirmation

**Why**: On screens where the user selects a delivery method that may
not correspond to their delivery preference (e.g. IdV phone
confirmation), then we want to convey their delivery preference to the
`prommpt_to_confirm` method so that it can use that delivery method if
it is available.

Disable voice OTP in IdV when it's unsupported

**Why**: If the user enters a phone that we can't voice call, we want to
disable the option to make it clear that it is unavailable.
@jmhooper jmhooper force-pushed the jmhooper-idv-otp-delivery-method-selection branch from 3132e46 to 1961656 Compare August 14, 2017 14:27
@jmhooper jmhooper merged commit da1d252 into master Aug 14, 2017
jmhooper added a commit that referenced this pull request Aug 15, 2017
**Why**: @monfresh fixed deprecations in the controller specs in #1607,
but #1605 included changes and was not merged at the time, so those
deprecation warnings found their way onto master. This commit fixes
those warnings.
@jmhooper jmhooper deleted the jmhooper-idv-otp-delivery-method-selection branch December 12, 2017 20:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants