**_aion_ - a python programmed digital assistant** - [Introduction](#introduction) - [Installation](#installation) - [Start](#start) - [Tutorial](#tutorial) - [Todo](#todo) - [Other Projects](#other-projects) - [License](#license) # Introduction **aion** is an python3 based digital assistant (voice assistant). It requires python 3.6 or higher and only runs on Linux / UNIX systems # Installation The installation need 1 - 2 GB free space To install **aion** for Linux / UNIX (only tested on Raspberry Pi 3B+ with Raspberry Pi OS), type: ``` $ sudo apt-get upgrade && sudo apt-get update $ sudo apt-get install git $ sudo git clone https://github.com/blueShard-dev/aion $ cd aion $ sudo ./install.sh # if this won't work, type 'sudo bash install.sh' instead ``` This will take a while (depending on your internet speed) and installs all required components After the installation is completed, reboot your system # Start To start / run aion, type: ``` $ aion start ``` or ``` $ aion run ``` # Tutorial - [Voice Commands](#voice-commands) - [Command Line Commands](#command-line-commands) ### Voice Commands To start aion say the activation word (`aion` default) and then a voice command, e.g. `aion, whats the current time?`. To change your activation word, visit https://snowboy.kitt.ai/, create a `.pmdl` file with your new activation word and place it into `/usr/local//etc/` and change the text of the `hotword_file` key in `/etc/aion_data` to `/usr/local//etc/` - en_US - cpu usage - gives the cpu usage back (after 10 test seconds) - ip address - gives the current ip address back (won't work properly when device is offline) - play - plays given song on youtube (may won't play the correct song) - ram usage - gives the ram usage back (after 10 test seconds) - tell & about - gives wikipedia article about the searched person, topic or something else back - time - gives the current time back - de_DE - erzähle & über - gibt den Wikipedia Artikel über das Gesuchte zurück - ip-addresse - gibt die aktuelle IP Adresse zurück (wird nicht richtig funktionieren, wenn das Gerät kein Internet hat) - prozessor auslastung - gibt die Prozessorauslastung zurück (nach 10 Sekunden Testzeit) - spiele - spielt gegebenes Lied auf Youtube ab (wird eventuell nicht das richtige Lied abspielen) - uhr - gibt die aktuelle Zeit zurück - zeit - gibt die aktuelle Zeit zurück See `/etc/aion_data/language/.acph` for all voice commands (the xml tags are the voice commands) ### Command Line Commands ``` Usage: aion [command] Commands: start starts aion run runs aion install installs a skill or plugin uninstall uninstalls a skill or plugin remove removes a skill or plugin update updates a skill or plugin version version of a skill or plugin save saves the current aion_data directory (with a name) load [name] loads a saved aion_data directory (add optional name to save the current aion_data directory with this name) saves shows all saved aion_data directory pid shows the pid from the running aion process kill kills aion stop stops aion pack packs the given directory with a custom skill or plugin into one standalone file for installation ``` # Todo - [ ] LED support for respeaker users - [ ] other logger - [ ] bluetooth module to connect with phone and play music - [ ] better commandline support - [ ] spotify support (for the "play" voice command) - [ ] watcher process to monitor the main process - [ ] tutorials - [ ] better description for the classes and functions - [ ] ai based speech recognition engine - [ ] ai based text-to-speech engine # Other Projects - [x] support library (see [aionlib](https://github.com/blueShard-dev/aionlib)) - [ ] gui interface - [ ] aion for windows - [ ] (android) app for phones # License This project is licensed under the GNU General Public License v3.0 (GPL-3.0) - see the [LICENSE](License) file for more details