Helper classes for Jarvis applications
Project description
This package contains helper classes for open-jarvis applications.
Classes
Colors
Colors
.PURPLE = '\033[95m'
.BLUE = '\033[94m'
.CYAN = '\033[96m'
.GREEN = '\033[92m'
.YELLOW = '\033[93m'
.RED = '\033[91m'
.END = '\033[0m'
.RESET = '\033[0m'
.WARNING= YELLOW
.ERROR = RED
Config
Config(user, filename="main.conf") # initialize the configuration in /home/{user}/.config/jarvis/{filename}
.exists() # returns true or false if the config file exists
.create() # create an empty configuration
.create_if_not_exists() # .create() if not .exists()
.get() # get entire configuration
.get_key(key) # get key from configuration
.set_key(key, value) # set a key in configuration
Exiter
def on_exit(args):
print("exiting... perform actions here!")
Exiter(on_exit, [args, ...]) # initializes an Exiter who executes the given function
# when the script receives a SIGTERM or SIGINT signal
Jarvis
This class is still in development
Jarvis(host, token, port=2021)
.connect(reconnect_on_error=True)
.reconnect()
.set_property(key, value) # TODO
Logger
Provides a uniform interface for logging files
Logger(logfile, compressed_folder)
.on() # turn on logging
.off() # turn off logging
.console_on() # turn on console logging
.console_off() # turn off console logging
.new_group() # turn on grouping and create a new logging group (only for fast RAM logging)
.enable_fast() # enable fast RAM logging
.disable_fast() # disable fast RAM logging
.clear_fast() # clear fast RAM logging data
.get_fast() # get fast RAM logs
.i(tag, message) # create an info message
.e(tag, message) # create an error message
.w(tag, message) # create a warning message
.s(tag, message) # create a success message
.c(tag, message) # create a critical message
MQTT
MQTT(host=127.0.0.1, port=1883, client_id=[random])
.on_connect(callback[client, userdata, flags, rc]) # on connect event
.on_message(callback[client, userdata, message]) # on message callback: topic = message.topic, data = message.payload.decode()
.publish(topic, payload) # public a str message under str topic
.subscribe(topic) # subscribe to a topic (# = all)
SetupTools
SetupTools
.do_action(print_str, shell_command, show_output=True, on_fail="failed!", on_success="done!", exit_on_fail=True): # run a shell command
.regex_replace_in_file(file_path, from_regex, to_string) # replace regex in file
.is_root() # check if has root access
.get_python_version() # get the executing python version
.check_python_version(version): # make sure get_python_version() == version, exit on fail
.check_root() # make sure is_root() == True, exit on fail
.get_default_installation_dir(default_dir) # ask for the default Jarvis installation directory, return either default_dir or a new directory
.get_default_user(default_user) # ask for the default user, return either default_user or a new username
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
open-jarvis-0.0.21.tar.gz
(5.7 kB
view details)
Built Distribution
File details
Details for the file open-jarvis-0.0.21.tar.gz
.
File metadata
- Download URL: open-jarvis-0.0.21.tar.gz
- Upload date:
- Size: 5.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.4.2 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.7.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 92bda0862f7e6131f7b2078376e190769a1e21c46ab7293046e7c90b992f1062 |
|
MD5 | 639928a8ce5691ac36b92732830f9ead |
|
BLAKE2b-256 | c7bfc164e48d0c3a1562134d5ef778335bf925b5d7e161f72b4d1043c8268684 |
File details
Details for the file open_jarvis-0.0.21-py3-none-any.whl
.
File metadata
- Download URL: open_jarvis-0.0.21-py3-none-any.whl
- Upload date:
- Size: 8.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.4.2 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.7.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 48b0051eaeb9a83f3ddcd2f035dd5239583ba5f227a7024a882708826b3a630b |
|
MD5 | 2ce6ddedd81680c46395830dd98c6fd4 |
|
BLAKE2b-256 | 1f131fb25e6abb82a79152d78296b555295cd1f4c621069995b570775ae714ba |