mycroft-core/mycroft/configuration/mycroft.conf

324 lines
9.6 KiB
Plaintext

{
// Definition and documentation of all variables used by mycroft-core.
//
// Settings seen here are considered DEFAULT. Settings can also be
// overridden at the REMOTE level (set by the user via
// https://home.mycroft.ai), at the SYSTEM level (typically in the file
// '/etc/mycroft/mycroft.conf'), or at the USER level (typically in the
// file '~/.mycroft/mycroft.conf').
//
// The load order of settings is:
// DEFAULT
// REMOTE
// SYSTEM
// USER
//
// The Override: comments below indicates where these settings are generally
// set outside of this file. The load order is always followed, so an
// individual systems can still apply changes at the SYSTEM or USER levels.
// Language used for speech-to-text and text-to-speech.
// Code is a BCP-47 identifier (https://tools.ietf.org/html/bcp47), lowercased
// TODO: save unmodified, lowercase upon demand
"lang": "en-us",
// Measurement units, either 'metric' or 'english'
// Override: REMOTE
"system_unit": "metric",
// Time format, either 'half' (e.g. "11:37 pm") or 'full' (e.g. "23:37")
// Override: REMOTE
"time_format": "half",
// Date format, either 'MDY' (e.g. "11-29-1978") or 'DMY' (e.g. "29-11-1978")
// Override: REMOTE
"date_format": "MDY",
// Whether to opt in to data collection
// Override: REMOTE
"opt_in": false,
// Play a beep when system begins to listen?
"confirm_listening": true,
// File locations of sounds to play for system events
"sounds": {
"start_listening": "snd/start_listening.wav",
"end_listening": "snd/end_listening.wav",
"acknowledge": "snd/acknowledge.mp3"
},
// Mechanism used to play WAV audio files
// Override: SYSTEM
"play_wav_cmdline": "paplay %1 --stream-name=mycroft-voice",
// Mechanism used to play MP3 audio files
// Override: SYSTEM
"play_mp3_cmdline": "mpg123 %1",
// Mechanism used to play OGG audio files
// Override: SYSTEM
"play_ogg_cmdline": "ogg123 -q %1",
// Location where the system resides
// NOTE: Although this is set here, an Enclosure can override the value.
// For example a mycroft-core running in a car could use the GPS.
// Override: REMOTE
"location": {
"city": {
"code": "Lawrence",
"name": "Lawrence",
"state": {
"code": "KS",
"name": "Kansas",
"country": {
"code": "US",
"name": "United States"
}
}
},
"coordinate": {
"latitude": 38.971669,
"longitude": -95.23525
},
"timezone": {
"code": "America/Chicago",
"name": "Central Standard Time",
"dstOffset": 3600000,
"offset": -21600000
}
},
// Also change in scripts/prepare-msm.sh
"data_dir": "/opt/mycroft",
// General skill values
"skills": {
"msm": {
// Relative to "data_dir"
"directory": "skills",
"versioned": true,
"repo": {
// Relative to "data_dir"
"cache": ".skills-repo",
"url": "https://github.com/MycroftAI/mycroft-skills",
"branch": "20.02"
}
},
"upload_skill_manifest": true,
// Directory to look for user skills
"directory": "~/.mycroft/skills",
// Enable auto update by msm
"auto_update": true,
// blacklisted skills to not load
// NB: This is the basename() of the directory where the skill lives, so if
// the skill you want to blacklist is in /opt/mycroft/skills/mycroft-alarm.mycroftai/
// then you should write "mycroft-alarm.mycroftai" below.
"blacklisted_skills": ["skill-media", "send_sms", "skill-wolfram-alpha", "pianobar-skill"],
// priority skills to be loaded first
"priority_skills": ["mycroft-pairing", "mycroft-volume"],
// Time between updating skills in hours
"update_interval": 1.0
},
// Address of the REMOTE server
"server": {
"url": "https://api.mycroft.ai",
"version": "v1",
"update": true,
"metrics": false
},
// The mycroft-core messagebus websocket
"websocket": {
"host": "0.0.0.0",
"port": 8181,
"route": "/core",
"ssl": false
},
// The GUI messagebus websocket. Once port is created per connected GUI
"gui_websocket": {
"host": "0.0.0.0",
"base_port": 18181,
"route": "/gui",
"ssl": false
},
// Settings used by the wake-up-word listener
// Override: REMOTE
"listener": {
"sample_rate": 16000,
// Set 'save_path' to configure the location of files stored if
// 'record_wake_words' and/or 'save_utterances' are set to 'true'.
// WARNING: Make sure that user 'mycroft' has write-access on the
// directory!
// "save_path": "/tmp",
// Set 'record_wake_words' to save a copy of wake word triggers
// as .wav files under: /'save_path'/mycroft_wake_words
"record_wake_words": false,
// Set 'save_utterances' to save each sentence sent to STT -- by default
// they are only kept briefly in-memory. This can be useful for for
// debugging or other custom purposes. Recordings are saved
// under: /'save_path'/mycroft_utterances/<TIMESTAMP>.wav
"save_utterances": false,
"wake_word_upload": {
"disable": false,
"url": "https://training.mycroft.ai/precise/upload"
},
// Override as SYSTEM or USER to select a specific microphone input instead of
// the PortAudio default input.
// "device_name": "somename", // can be regex pattern or substring
// or
// "device_index": 12,
// Stop listing to the microphone during playback to prevent accidental triggering
// This is enabled by default, but instances with good microphone noise cancellation
// can disable this to listen all the time, allowing 'barge in' functionality.
"mute_during_output" : true,
// How much (if at all) to 'duck' the speaker output during listening. A
// setting of 0.0 will not duck at all. A 1.0 will completely mute output
// while in a listening state. Values in between will lower the volume
// partially (this is optional behavior, depending on the enclosure).
"duck_while_listening" : 0.3,
// In milliseconds
"phoneme_duration": 120,
"multiplier": 1.0,
"energy_ratio": 1.5,
"wake_word": "hey mycroft",
"stand_up_word": "wake up"
},
// Settings used for any precise wake words
"precise": {
"dist_url": "https://github.com/MycroftAI/precise-data/raw/dist/{arch}/latest",
"model_url": "https://raw.githubusercontent.com/MycroftAI/precise-data/models/{wake_word}.tar.gz"
},
// Hotword configurations
"hotwords": {
"hey mycroft": {
"module": "precise",
"phonemes": "HH EY . M AY K R AO F T",
"threshold": 1e-90,
"lang": "en-us"
// Specify custom model via:
// "local_model_file": "~/.mycroft/precise/models/something.pb"
// Precise options:
// "sensitivity": 0.5, // Higher = more sensitive
// "trigger_level": 3 // Higher = more delay & less sensitive
},
"wake up": {
"module": "pocketsphinx",
"phonemes": "W EY K . AH P",
"threshold": 1e-20,
"lang": "en-us"
}
},
// Mark 1 enclosure settings
// Override: SYSTEM (e.g. Picroft)
"enclosure": {
// Platform name
// Options: 'picroft', 'mycroft_mark_1'
// Override: SYSTEM (set by specific enclosures)
// "platform": "picroft",
// "platform_enclosure_path": "/etc/myenclosure/code.py",
// COMM params to the Arduino/faceplate
"port": "/dev/ttyAMA0",
"rate": 9600,
"timeout": 5.0,
// ??
"update": true,
// Run a self test at bootup?
"test": false
},
// Level of logs to store, one of "CRITICAL", "ERROR", "WARNING", "INFO", "DEBUG"
// NOTE: This configuration setting is special and can only be changed in the
// SYSTEM or USER configuration file, it will not be read if defined in the
// DEFAULT (here) or in the REMOTE mycroft config.
// If not defined, the default log level is INFO.
//"log_level": "INFO",
// Messagebus types that will NOT be output to logs
"ignore_logs": ["enclosure.mouth.viseme", "enclosure.mouth.display"],
// Settings related to remote sessions
// Overrride: none
"session": {
// Time To Live, in seconds
"ttl": 180
},
// Speech to Text parameters
// Override: REMOTE
"stt": {
// Engine. Options: "mycroft", "google", "wit", "ibm", "kaldi", "bing",
// "houndify", "deepspeech_server", "govivace", "yandex"
"module": "mycroft"
// "deepspeech_server": {
// "uri": "http://localhost:8080/stt"
// },
// "kaldi": {
// "uri": "http://localhost:8080/client/dynamic/recognize"
// },
//"govivace": {
// "uri": "https://services.govivace.com:49149/telephony",
// "credential": {
// "token": "xxxxx"
// }
//}
},
// Text to Speech parameters
// Override: REMOTE
"tts": {
// Engine. Options: "mimic", "google", "marytts", "fatts", "espeak", "spdsay", "responsive_voice", "yandex"
"pulse_duck": false,
"module": "mimic",
"mimic": {
"voice": "ap"
},
"mimic2": {
"lang": "en-us",
"url": "https://mimic-api.mycroft.ai/synthesize?text=",
"preloaded_cache": "/opt/mycroft/preloaded_cache/Mimic2"
},
"espeak": {
"lang": "english-us",
"voice": "m1"
}
},
"padatious": {
"intent_cache": "~/.mycroft/intent_cache",
"train_delay": 4,
"single_thread": false
},
"Audio": {
"backends": {
"local": {
"type": "simple",
"active": true
},
"vlc": {
"type": "vlc",
"active": true,
"duck": true
}
},
"default-backend": "local"
},
"debug": false
}