Public Member Functions | Public Attributes | Private Member Functions | Private Attributes | List of all members
mycroft.skills.settings.SkillSettings Class Reference
Inheritance diagram for mycroft.skills.settings.SkillSettings:
Inheritance graph
[legend]

Public Member Functions

def __getitem__ (self, key)
 
def __hash__ (self)
 
def __init__ (self, directory, name)
 
def __setitem__ (self, key, value)
 
def hash (self, string)
 
def initialize_remote_settings (self)
 
def load_skill_settings_from_file (self)
 
def run_poll (self, _=None)
 
def save_skill_settings (self, skill_settings)
 
def set_changed_callback (self, callback)
 
def skill_gid (self)
 
def stop_polling (self)
 
def store (self, force=False)
 
def update_remote (self)
 

Public Attributes

 allow_overwrite
 
 api
 
 changed_callback
 
 config
 
 display_name
 
 is_alive
 
 loaded_hash
 
 name
 

Private Member Functions

def _init_blank_meta (self)
 
def _is_stored (self)
 
def _load_settings_meta (self)
 
def _migrate_settings (self, settings_meta)
 
def _poll_skill_settings (self)
 
def _request_my_settings (self, identifier)
 
def _request_settings (self)
 
def _send_settings_meta (self, settings_meta)
 
def _should_upload_from_change (self)
 
def _type_cast (self, settings_meta, to_platform)
 
def _upload_meta (self, settings_meta, identifier)
 

Private Attributes

 __skill_gid
 
 _api_path
 
 _blank_poll_timer
 
 _complete_intialization
 
 _device_identity
 
 _directory
 
 _is_alive
 
 _meta_path
 
 _meta_upload
 
 _poll_timer
 
 _remote_settings
 
 _settings_path
 
 _user_identity
 

Detailed Description

Dictionary that can easily be saved to a file, serialized as json. It
    also syncs to the backend for skill settings

Args:
    directory (str):  Path to storage directory
    name (str):       user readable name associated with the settings
    no_upload (bool): True if the upload to mycroft servers should be
                      disabled.

Definition at line 118 of file settings.py.

Constructor & Destructor Documentation

def mycroft.skills.settings.SkillSettings.__init__ (   self,
  directory,
  name 
)

Definition at line 129 of file settings.py.

Member Function Documentation

def mycroft.skills.settings.SkillSettings.__getitem__ (   self,
  key 
)
Get key 

Definition at line 243 of file settings.py.

def mycroft.skills.settings.SkillSettings.__hash__ (   self)
Simple object unique hash. 

Definition at line 181 of file settings.py.

def mycroft.skills.settings.SkillSettings.__setitem__ (   self,
  key,
  value 
)
Add/Update key. 

Definition at line 247 of file settings.py.

def mycroft.skills.settings.SkillSettings._init_blank_meta (   self)
private
Send blank settingsmeta to remote. 

Definition at line 379 of file settings.py.

def mycroft.skills.settings.SkillSettings._is_stored (   self)
private

Definition at line 240 of file settings.py.

def mycroft.skills.settings.SkillSettings._load_settings_meta (   self)
private
Load settings metadata from the skill folder.

If no settingsmeta exists a basic settingsmeta will be created
containing a basic identifier.

Returns:
    (dict) settings meta

Definition at line 252 of file settings.py.

def mycroft.skills.settings.SkillSettings._migrate_settings (   self,
  settings_meta 
)
private
sync settings.json and settingsmeta in memory 

Definition at line 331 of file settings.py.

def mycroft.skills.settings.SkillSettings._poll_skill_settings (   self)
private
If identifier exists for this skill poll to backend to
    request settings and store it if it changes
    TODO: implement as websocket

Definition at line 397 of file settings.py.

def mycroft.skills.settings.SkillSettings._request_my_settings (   self,
  identifier 
)
private
Get skill settings for this device associated
    with the identifier
Args:
    identifier (str): a hashed_meta
Returns:
    skill_settings (dict or None): returns a dict if matches

Definition at line 502 of file settings.py.

def mycroft.skills.settings.SkillSettings._request_settings (   self)
private
Get all skill settings for this device from server.

Returns:
    dict: dictionary with settings collected from the server.

Definition at line 522 of file settings.py.

def mycroft.skills.settings.SkillSettings._send_settings_meta (   self,
  settings_meta 
)
private
Send settingsmeta to the server.

Args:
    settings_meta (dict): dictionary of the current settings meta
Returns:
    dict: uuid, a unique id for the setting meta data

Definition at line 289 of file settings.py.

def mycroft.skills.settings.SkillSettings._should_upload_from_change (   self)
private

Definition at line 537 of file settings.py.

def mycroft.skills.settings.SkillSettings._type_cast (   self,
  settings_meta,
  to_platform 
)
private
Tranform data type to be compatible with Home and/or Core.

e.g.
Web to core
"true" => True, "1.4" =>  1.4

core to Web
False => "false'

Args:
    settings_meta (dict): skills object
    to_platform (str): platform to convert
               compatible data types to
Returns:
    dict: skills object

Definition at line 446 of file settings.py.

def mycroft.skills.settings.SkillSettings._upload_meta (   self,
  settings_meta,
  identifier 
)
private
uploads the new meta data to settings with settings migration

Args:
    settings_meta (dict): settingsmeta.json or settingsmeta.yaml
    identifier (str): identifier for skills meta data

Definition at line 347 of file settings.py.

def mycroft.skills.settings.SkillSettings.hash (   self,
  string 
)
md5 hasher for consistency across cpu architectures 

Definition at line 359 of file settings.py.

def mycroft.skills.settings.SkillSettings.initialize_remote_settings (   self)
initializes the remote settings to the server 

Definition at line 207 of file settings.py.

def mycroft.skills.settings.SkillSettings.load_skill_settings_from_file (   self)
If settings.json exist, open and read stored values into self 

Definition at line 433 of file settings.py.

def mycroft.skills.settings.SkillSettings.run_poll (   self,
  _ = None 
)
Immediately poll the web for new skill settings

Definition at line 185 of file settings.py.

def mycroft.skills.settings.SkillSettings.save_skill_settings (   self,
  skill_settings 
)
Takes skill object and save onto self

Args:
    skill_settings (dict): skill

Definition at line 314 of file settings.py.

def mycroft.skills.settings.SkillSettings.set_changed_callback (   self,
  callback 
)
Set callback to perform when server settings have changed.

Args:
    callback: function/method to call when settings have changed

Definition at line 198 of file settings.py.

def mycroft.skills.settings.SkillSettings.skill_gid (   self)
Finalizes the skill gid to include device uuid if needed. 

Definition at line 173 of file settings.py.

def mycroft.skills.settings.SkillSettings.stop_polling (   self)

Definition at line 191 of file settings.py.

def mycroft.skills.settings.SkillSettings.store (   self,
  force = False 
)
Store dictionary to file if a change has occured.

Args:
    force:  Force write despite no change

Definition at line 557 of file settings.py.

def mycroft.skills.settings.SkillSettings.update_remote (   self)
update settings state from server 

Definition at line 363 of file settings.py.

Member Data Documentation

mycroft.skills.settings.SkillSettings.__skill_gid
private

Definition at line 160 of file settings.py.

mycroft.skills.settings.SkillSettings._api_path
private

Definition at line 149 of file settings.py.

mycroft.skills.settings.SkillSettings._blank_poll_timer
private

Definition at line 153 of file settings.py.

mycroft.skills.settings.SkillSettings._complete_intialization
private

Definition at line 147 of file settings.py.

mycroft.skills.settings.SkillSettings._device_identity
private

Definition at line 148 of file settings.py.

mycroft.skills.settings.SkillSettings._directory
private

Definition at line 143 of file settings.py.

mycroft.skills.settings.SkillSettings._is_alive
private

Definition at line 154 of file settings.py.

mycroft.skills.settings.SkillSettings._meta_path
private

Definition at line 142 of file settings.py.

mycroft.skills.settings.SkillSettings._meta_upload
private

Definition at line 155 of file settings.py.

mycroft.skills.settings.SkillSettings._poll_timer
private

Definition at line 152 of file settings.py.

mycroft.skills.settings.SkillSettings._remote_settings
private

Definition at line 518 of file settings.py.

mycroft.skills.settings.SkillSettings._settings_path
private

Definition at line 141 of file settings.py.

mycroft.skills.settings.SkillSettings._user_identity
private

Definition at line 150 of file settings.py.

mycroft.skills.settings.SkillSettings.allow_overwrite

Definition at line 135 of file settings.py.

mycroft.skills.settings.SkillSettings.api

Definition at line 137 of file settings.py.

mycroft.skills.settings.SkillSettings.changed_callback

Definition at line 151 of file settings.py.

mycroft.skills.settings.SkillSettings.config

Definition at line 138 of file settings.py.

mycroft.skills.settings.SkillSettings.display_name

Definition at line 161 of file settings.py.

mycroft.skills.settings.SkillSettings.is_alive

Definition at line 145 of file settings.py.

mycroft.skills.settings.SkillSettings.loaded_hash

Definition at line 146 of file settings.py.

mycroft.skills.settings.SkillSettings.name

Definition at line 139 of file settings.py.


The documentation for this class was generated from the following file:


mycroft_ros
Author(s):
autogenerated on Mon Apr 26 2021 02:35:41