Skip to content

OpenVoiceOS/ovos-personal-backend

dev
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

OVOS Personal Backend

Personal backend for OpenVoiceOS, written in flask

This allows you to manage multiple devices from a single location

⚠️ there are no user accounts ⚠️

Documentation can be found at https://openvoiceos.github.io/community-docs/personal_backend

NOTES:

  • this backend moved to SQL databases on release 0.2.0, json databases from older version are not compatible
  • at the time of writing, backend manager does not yet work with this backend version
  • backend-client now includes a CRUD api to interact with databases OpenVoiceOS/ovos-backend-client#30

Install

from pip

pip install ovos-local-backend

Companion projects

You can use this backend as a STT server proxy via ovos-stt-plugin-server, eg https://your_backend.org/stt

Configuration

configure backend by editing/creating ~/.config/mycroft/ovos_backend.conf

{
  "lang": "en-us",
  "date_format": "DMY",
  "system_unit": "metric",
  "time_format": "full",
  "location": {
    "city": {"...": "..."},
    "coordinate": {"...": "..."},
    "timezone": {"...": "..."}
  },

  "stt_servers": ["https://stt.openvoiceos.org/stt"],

  "server": {
    "admin_key": "leave empty to DISABLE admin api",
    "port": 6712,
    "database": "sqlite:////home/user/.local/share/ovos_backend.db",
    "skip_auth": false,
    "geolocate": true,
    "override_location": false,
    "version": "v1"
  },

  "listener": {
     "record_utterances": false,
     "record_wakewords": false
  },

  "microservices": {
    "wolfram_key": "$KEY",
    "owm_key": "$KEY",
    "email": {
       "recipient": "",
       "smtp": {
            "username": "",
            "password": "",
            "host": "smtp.mailprovider.com",
            "port": 465
       }
    }
  }

}

database can be sqlite or mysql eg. mysql+mysqldb://scott:tiger@192.168.0.134/test?ssl_ca=/path/to/ca.pem&ssl_cert=/path/to/client-cert.pem&ssl_key=/path/to/client-key.pem

Docker

There is also a docker container you can use

docker run -p 8086:6712 -d --restart always --name local_backend ghcr.io/openvoiceos/local-backend:dev