class TPLink::Config
This class handles the configuration. It is used internally and should not need to be called. @!visibility private
Public Class Methods
new(config = {})
click to toggle source
# File lib/tp_link/config.rb, line 8 def initialize(config = {}) @config = config raise 'User name not spcified in configuration.' \ unless @config.key?('user') raise 'Password not specified in configuration.' \ unless @config.key?('password') generate_uuid unless @config.key? 'uuid' end
Public Instance Methods
app_type()
click to toggle source
# File lib/tp_link/config.rb, line 22 def app_type 'Kasa_Android' end
cloud_password()
click to toggle source
# File lib/tp_link/config.rb, line 34 def cloud_password @config['password'] end
cloud_user_name()
click to toggle source
# File lib/tp_link/config.rb, line 30 def cloud_user_name @config['user'] end
generate_uuid()
click to toggle source
# File lib/tp_link/config.rb, line 17 def generate_uuid @config['uuid'] ||= SecureRandom.uuid @config['uuid'] end
terminal_uuid()
click to toggle source
# File lib/tp_link/config.rb, line 26 def terminal_uuid @config['uuid'] ||= Securerandom.uuid end
to_hash()
click to toggle source
# File lib/tp_link/config.rb, line 38 def to_hash { appType: app_type, cloudUserName: cloud_user_name, cloudPassword: cloud_password, terminalUUID: terminal_uuid } end
to_json(_o)
click to toggle source
# File lib/tp_link/config.rb, line 47 def to_json(_o) to_hash.to_json end