This release is a pre-release and may not be stable for production use.
OVOS MessageBus
ovos-messagebus is the WebSocket message bus server for OpenVoiceOS. Every OVOS service connects to this bus and exchanges Message objects with it. The bus does not route or filter messages. It broadcasts each message to every connected client.
Install
pip install ovos-messagebus
Usage
Start the server from the command line:
ovos-messagebus
Or run it as a module:
python -m ovos_messagebus
The server reads its connection settings from mycroft.conf under the websocket key:
{
// The mycroft-core messagebus websocket
"websocket": {
"host": "0.0.0.0",
"port": 8181,
"route": "/core",
"ssl": false,
// in mycroft-core all skills share a bus, this allows malicious skills
// to manipulate it and affect other skills, this option ensures each skill
// gets its own websocket connection
"shared_connection": true,
// filter out messages of certain types from the bus logs
"filter": false,
// which messages to filter if filter is enabled
"filter_logs": ["gui.status.request", "gui.page.upload"]
}
}
See docs/configuration.md for the full list of options, docs/server.md for the server internals, and docs/events.md for the message types that flow through the bus.
Alternative implementations
- ovos-rust-messagebus: alternative Rust messagebus server implementation.
- ovos-messagebus-cpp: alternative C++ messagebus server implementation using WebSocket++ (archived).
ovos-messagebus also ships an optional Rust-powered backend (webrockets) alongside its default Tornado backend. See docs/backends.md for setup and benchmark results.
Related projects
- ovos-bus-client: the client library all services and skills use to connect to this bus.
- ovos-core: intent pipeline and skill orchestration. It connects to this bus as a client.
- ovos-audio: TTS rendering and audio playback. It connects to this bus as a client.
- ovos-gui: GUI namespace management. It bridges skills to GUI clients over this bus.
- ovos-dinkum-listener: wake word detection and STT transcription. It connects to this bus as a client.
- ovos-PHAL: the hardware abstraction layer. It connects to this bus as a client.
License
Apache-2.0. See LICENSE.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ovos_messagebus-0.2.1a2.tar.gz.
File metadata
- Download URL: ovos_messagebus-0.2.1a2.tar.gz
- Upload date:
- Size: 15.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
92aa1f8f4460e22ffd454eae7e4a600389d9b22fbf39cf6612a5c38479f8e1b2
|
|
| MD5 |
9181f29ed9d832098e2358d8bed9fd38
|
|
| BLAKE2b-256 |
8e51b003ae275a69fd6416aa1ac066cb343fd495308664763247a7aa6d395836
|
File details
Details for the file ovos_messagebus-0.2.1a2-py3-none-any.whl.
File metadata
- Download URL: ovos_messagebus-0.2.1a2-py3-none-any.whl
- Upload date:
- Size: 18.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
915d1e0b8690b0691881dc3be6942e94ebf2835ce883bd4f6882289111ce5aea
|
|
| MD5 |
97c9190e18bd0beb02846fe536f959c9
|
|
| BLAKE2b-256 |
75b0ac1fb657d187ee3f4ec3856428da6d9887a6c21eb74957052568d5f8a4e9
|