class OtpCli::TOTP

Public Class Methods

new(line, name, secret, issuer=nil, algorithm='sha1', digits=6, period=30) click to toggle source
Calls superclass method OtpCli::OTP::new
# File lib/otp-cli/otp.rb, line 78
def initialize(line, name, secret, issuer=nil, algorithm='sha1', digits=6, period=30)
        @period = period
        otp     = ::ROTP::TOTP.new secret, digits: digits, digest: algorithm, interval: period
        super otp, line, name, secret, issuer, algorithm, digits
end

Public Instance Methods

code() click to toggle source
# File lib/otp-cli/otp.rb, line 84
def code
        @otp.now
end
delay() click to toggle source
# File lib/otp-cli/otp.rb, line 88
def delay
        @period - (Time.now.to_i % @period)
end