27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
|
# File 'spaceship/lib/spaceship/two_step_or_factor_client.rb', line 27
def handle_two_step(response)
if response.body.fetch("securityCode", {})["tooManyCodesLock"].to_s.length > 0
raise Tunes::Error.new, "Too many verification codes have been sent. Enter the last code you received, use one of your devices, or try again later."
end
puts("Two-step Verification (4 digits code) is enabled for account '#{self.user}'")
puts("More information about Two-step Verification: https://support.apple.com/en-us/HT204152")
puts("")
puts("Please select a trusted device to verify your identity")
available = response.body["trustedDevices"].collect do |current|
"#{current['name']}\t#{current['modelName'] || 'SMS'}\t(#{current['id']})"
end
result = choose(*available)
device_id = result.match(/.*\t.*\t\((.*)\)/)[1]
handle_two_step_for_device(device_id)
end
|