Syntax, layout, and typo repairs. (#819)
* Syntax, layout, and typo repairs. Fixed a bunch of spelling errors, punctuation problems, and layout inconsistencies. Clarified some of the language. Added a link to the `screen` man page. * Chat link update Added: https://mycroft.ai/to/chat/ * Added home.mycroft.ai as config option * Capitalization and small syntax editspull/883/head
parent
c2b2134a12
commit
d122eabc7d
97
README.md
97
README.md
|
@ -1,29 +1,29 @@
|
||||||
Mycroft [](https://travis-ci.org/MycroftAI/mycroft-core) [](https://coveralls.io/github/MycroftAI/mycroft-core?branch=dev)
|
Mycroft [](https://travis-ci.org/MycroftAI/mycroft-core) [](https://coveralls.io/github/MycroftAI/mycroft-core?branch=dev)
|
||||||
==========
|
==========
|
||||||
|
|
||||||
NOTE: The default branch for this repo is dev. This should be considered a working beta. If you want to clone a more stable version, switch over to the 'master' branch.
|
NOTE: The default branch for this repository is 'dev', which should be considered a working beta. If you want to clone a more stable version, switch over to the 'master' branch.
|
||||||
|
|
||||||
Full docs at: https://docs.mycroft.ai
|
Documentation: https://docs.mycroft.ai
|
||||||
|
|
||||||
Release notes at: https://docs.mycroft.ai/release-notes
|
Release Notes: https://docs.mycroft.ai/release-notes
|
||||||
|
|
||||||
Pair Mycroft instance at: https://home.mycroft.ai
|
Pair Mycroft Device: https://home.mycroft.ai
|
||||||
|
|
||||||
Join the Mycroft Slack(chat) channel: http://mycroft-ai-slack-invite.herokuapp.com/
|
Mycroft Chat Network: https://mycroft.ai/to/chat
|
||||||
|
|
||||||
Looking to join in developing? Check out the [Project Wiki](../../wiki/Home) for tasks you can tackle!
|
Looking to join in developing? Check out the [Project Wiki](../../wiki/Home) for tasks you can tackle!
|
||||||
|
|
||||||
# Getting Started
|
# Getting Started
|
||||||
|
|
||||||
### Ubuntu/Debian, Arch, or Fedora
|
### Ubuntu/Debian, Arch, or Fedora
|
||||||
- Run the build host setup script for your OS (Ubuntu/Debian: `build_host_setup_debian.sh`, Arch: `build_host_setup_arch.sh`, Fedora: `build_host_setup_fedora.sh`). This installs necessary packages, please read it
|
- Run the build host setup script for your OS (Ubuntu/Debian: `build_host_setup_debian.sh`, Arch: `build_host_setup_arch.sh`, Fedora: `build_host_setup_fedora.sh`). This script installs necessary packages. Please read it!
|
||||||
- Run `dev_setup.sh` (feel free to read it, as well)
|
|
||||||
- Restart session (reboot computer, or logging out and back in might work).
|
|
||||||
|
|
||||||
### Other environments
|
- Run `dev_setup.sh` (Feel free to read it, as well).
|
||||||
|
|
||||||
The following packages are required for setting up the development environment,
|
- Restart session (Rebooting, or logging out and back in might work).
|
||||||
and are what is installed by `build_host_setup` scripts.
|
|
||||||
|
### Other Environments
|
||||||
|
The following packages are required for setting up the development environment and are installed by `build_host_setup` scripts:
|
||||||
|
|
||||||
- `git`
|
- `git`
|
||||||
- `python 2`
|
- `python 2`
|
||||||
|
@ -45,20 +45,20 @@ The following packages are required for setting up the development environment,
|
||||||
- `curl`
|
- `curl`
|
||||||
|
|
||||||
## Home Device and Account Manager
|
## Home Device and Account Manager
|
||||||
Mycroft AI, Inc. - the company behind Mycroft maintains the Home device and account management system. Developers can sign up at https://home.mycroft.ai
|
Mycroft AI, Inc. maintains a device and account management system known as Mycroft Home. Developers may sign up at: https://home.mycroft.ai
|
||||||
|
|
||||||
By default the Mycroft software is configured to use Home, upon any request such as "Hey Mycroft, what is the weather?", you will be informed that you need to pair and Mycroft will speak a 6-digit code, which you enter into the pairing page on the [Home site](https://home.mycroft.ai).
|
By default, Mycroft software is configured to use Home. Upon any request such as "Hey Mycroft, what is the weather?", you will be informed that your device needs to be paired. Mycroft will speak a 6-digit code, which is entered into the pairing page within the [Mycroft Home site](https://home.mycroft.ai).
|
||||||
|
|
||||||
Once signed and a device is paired, the unit will use our API keys for services, such as the STT (Speech-to-Text) API. It also allows you to use our API keys for weather, Wolfram-Alpha, and various other skills.
|
Once signed and paired, your unit will use Mycroft API keys for services such as STT (Speech-to-Text), weather, Wolfram-Alpha, and various other skills.
|
||||||
|
|
||||||
Pairing information generated by registering with Home is stored in:
|
Pairing information generated by registering with Home is stored in:
|
||||||
|
|
||||||
`~/.mycroft/identity/identity2.json` <b><-- DO NOT SHARE THIS WITH OTHERS!</b>
|
`~/.mycroft/identity/identity2.json` <b><-- DO NOT SHARE THIS WITH OTHERS!</b>
|
||||||
|
|
||||||
It's useful to know the location of the identity file when troubleshooting device pairing issues.
|
It is useful to know the location of this identity file when troubleshooting any device pairing issues.
|
||||||
|
|
||||||
## Using Mycroft without Home.
|
## Using Mycroft Without Home.
|
||||||
If you do not wish to use our service, you may insert your own API keys into the configuration files listed below in <b>configuration</b>.
|
If you do not wish to use the Mycroft Home service, you may insert your own API keys into the configuration files listed below in <b>configuration</b>.
|
||||||
|
|
||||||
The place to insert the API key looks like the following:
|
The place to insert the API key looks like the following:
|
||||||
|
|
||||||
|
@ -66,49 +66,55 @@ The place to insert the API key looks like the following:
|
||||||
|
|
||||||
`api_key = ""`
|
`api_key = ""`
|
||||||
|
|
||||||
Put the relevant key in between the quotes and Mycroft Core should begin to use the key immediately.
|
Put a relevant key inside the quotes and Mycroft Core should begin to use the key immediately.
|
||||||
|
|
||||||
### API Key services
|
### API Key Services
|
||||||
|
These are the keys currently used in Mycroft Core:
|
||||||
|
|
||||||
- [STT API, Google STT](http://www.chromium.org/developers/how-tos/api-keys)
|
- [STT API, Google STT](http://www.chromium.org/developers/how-tos/api-keys)
|
||||||
- [Weather Skill API, OpenWeatherMap](http://openweathermap.org/api)
|
- [Weather Skill API, OpenWeatherMap](http://openweathermap.org/api)
|
||||||
- [Wolfram-Alpha Skill](http://products.wolframalpha.com/api/)
|
- [Wolfram-Alpha Skill](http://products.wolframalpha.com/api/)
|
||||||
|
|
||||||
These are the keys currently in use in Mycroft Core.
|
|
||||||
|
|
||||||
## Configuration
|
## Configuration
|
||||||
Mycroft configuration consists of 3 possible config files.
|
Mycroft configuration consists of 4 possible locations:
|
||||||
- `mycroft-core/mycroft/configuration/mycroft.conf`
|
- `mycroft-core/mycroft/configuration/mycroft.conf`(Defaults)
|
||||||
- `/etc/mycroft/mycroft.conf`
|
- [Mycroft Home](https://home.mycroft.ai) (Remote)
|
||||||
- `$HOME/.mycroft/mycroft.conf`
|
- `/etc/mycroft/mycroft.conf`(Machine)
|
||||||
|
- `$HOME/.mycroft/mycroft.conf`(User)
|
||||||
|
|
||||||
When the configuration loader starts, it looks in those locations in that order, and loads ALL configuration. Keys that exist in multiple config files will be overridden by the last file to contain that config value. This results in a minimal amount of config being written for a specific device/user, without modifying the distribution files.
|
When the configuration loader starts, it looks in these locations in this order, and loads ALL configurations. Keys that exist in multiple configuration files will be overridden by the last file to contain the value. This process results in a minimal amount being written for a specific device and user, without modifying default distribution files.
|
||||||
|
|
||||||
# Running Mycroft Quick Start
|
# Running Mycroft Quick Start
|
||||||
To start the essential tasks run `./mycroft.sh start`. Which will start the service, skills, voice and cli (using --quiet mode) in a detached screen and log the output of the screens to the their respective log files (e.g. ./log/mycroft-service.log).
|
To start essential tasks, run `./mycroft.sh start`. This command will start the Mycroft service, skills, voice, and command line interface (cli) using `--quiet mode` in a detached screen. Output of these screens will be written to their respective log files (e.g. ./log/mycroft-service.log).
|
||||||
Optionally you can run `./mycroft.sh start -v` Which will start the service, skills and voice. Or `./mycroft.sh start -c` Which will start the service, skills and cli.
|
|
||||||
|
|
||||||
To stop Mycroft run `./mycroft.sh stop`. This will quit all of the detached screens.
|
Optionally, you may run `./mycroft.sh start -v` which will start the Mycroft service, skills, and voice.
|
||||||
To restart Mycroft run './mycroft.sh restart`.
|
|
||||||
|
|
||||||
Quick screen tips
|
You may also run `./mycroft.sh start -c` which will start the Mycroft service, skills and command line interface.
|
||||||
- run `screen -list` to see all running screens
|
|
||||||
- run `screen -r [screen-name]` (e.g. `screen -r mycroft-service`) to reattach a screen
|
To stop Mycroft, run `./mycroft.sh stop`. This command will terminate all detached screens.
|
||||||
- to detach a running screen press `ctrl + a, ctrl + d`
|
|
||||||
See the screen man page for more details
|
To restart Mycroft, run `./mycroft.sh restart`.
|
||||||
|
|
||||||
|
# Quick Screen Tips
|
||||||
|
- Run `screen -list` to see all running screens.
|
||||||
|
|
||||||
|
- Run `screen -r [screen-name]` (e.g. `screen -r mycroft-service`) to reattach a screen.
|
||||||
|
|
||||||
|
- To detach a running screen, press `Ctrl + a, Ctrl + d`
|
||||||
|
|
||||||
|
See the [screen man page](http://man7.org/linux/man-pages/man1/screen.1.html) for more details.
|
||||||
|
|
||||||
# Running Mycroft
|
# Running Mycroft
|
||||||
## With `start.sh`
|
## With `start.sh`
|
||||||
Mycroft provides `start.sh` to run a large number of common tasks. This script uses the virtualenv created by `dev_setup.sh`. The usage statement lists all run targets, but to run a Mycroft stack out of a git checkout, the following processes should be started:
|
Mycroft provides `start.sh` to run a large number of common tasks. This script uses a virtualenv created by `dev_setup.sh`. The usage statement lists all run targets, but to run a Mycroft stack out of a git checkout, the following processes should be started:
|
||||||
|
|
||||||
- run `./start.sh service`
|
- Run `./start.sh service`
|
||||||
- run `./start.sh skills`
|
- Run `./start.sh skills`
|
||||||
- run `./start.sh voice`
|
- Run `./start.sh voice`
|
||||||
|
|
||||||
*Note: The above scripts are blocking, so each will need to be run in a separate terminal session.*
|
*Note: The above scripts are blocking, so each will need to be run in a separate terminal session.*
|
||||||
|
|
||||||
## Without `start.sh`
|
## Without `start.sh`
|
||||||
|
|
||||||
Activate your virtualenv.
|
Activate your virtualenv.
|
||||||
|
|
||||||
With virtualenv-wrapper:
|
With virtualenv-wrapper:
|
||||||
|
@ -121,15 +127,14 @@ Without virtualenv-wrapper:
|
||||||
source ~/.virtualenvs/mycroft/bin/activate
|
source ~/.virtualenvs/mycroft/bin/activate
|
||||||
```
|
```
|
||||||
|
|
||||||
|
- Run `PYTHONPATH=. python client/speech/main.py` # Main speech detection loop, which prints events to stdout and broadcasts them to the message bus.
|
||||||
- run `PYTHONPATH=. python client/speech/main.py` # the main speech detection loop, which prints events to stdout and broadcasts them to a message bus
|
- Run `PYTHONPATH=. python client/messagebus/service/main.py` # Main message bus, implemented via web sockets.
|
||||||
- run `PYTHONPATH=. python client/messagebus/service/main.py` # the main message bus, implemented via web sockets
|
- Run `PYTHONPATH=. python client/skills/main.py` # Main skills executable, loads all skills under skills directory.
|
||||||
- run `PYTHONPATH=. python client/skills/main.py` # main skills executable, loads all skills under skills dir
|
|
||||||
|
|
||||||
*Note: The above scripts are blocking, so each will need to be run in a separate terminal session. Each terminal session will require that the virtualenv be activated. There are very few reasons to use this method.*
|
*Note: The above scripts are blocking, so each will need to be run in a separate terminal session. Each terminal session will require that the virtualenv be activated. There are very few reasons to use this method.*
|
||||||
|
|
||||||
# FAQ / Common Errors
|
# FAQ / Common Errors
|
||||||
|
|
||||||
#### When running mycroft, I get the error `mycroft.messagebus.client.ws - ERROR - Exception("Uncaught 'error' event.",)`
|
#### When running Mycroft, I get the error `mycroft.messagebus.client.ws - ERROR - Exception("Uncaught 'error' event.",)`
|
||||||
|
|
||||||
This means that you are not running the `./start.sh service` process. In order to fully run Mycroft, you must run `./start.sh service`, `./start.sh skills`, and `./start.sh voice`/`./start.sh cli` all at the same time. This can be done using different terminal windows, or by using the included `./mycroft.sh start`, which runs all four process using `screen`.
|
This means that you are not running the `./start.sh service` process. In order to fully run Mycroft, you must run `./start.sh service`, `./start.sh skills`, `./start.sh voice`, and `./start.sh cli` all at the same time. This can be done using different terminal windows, or by using the included `./mycroft.sh start` command, which runs all four process using `screen`.
|
||||||
|
|
Loading…
Reference in New Issue