Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

ovos-ui-enclosure-protocol

The consumer/listener home of the legacy Mark-1 hardware enclosure protocol for OpenVoiceOS.

The enclosure.* bus messages control the Mark-1 hardware enclosure: the LED eyes, the mouth/faceplate display, and the system LEDs. This package provides EnclosureProtocolListener, a consumer mix-in that a hardware enclosure plugin inherits to wire the enclosure.* subscriptions to overridable no-op handlers. ovos-PHAL-plugin-mk1 is the reference listener implementation.

The producer side, EnclosureAPI, is the skill-facing helper that emits enclosure.*. It lives in ovos-gui-api-client alongside GUIInterface, so self.gui and self.enclosure come from the same client.

The enclosure protocol is no longer a core abstraction: PHALPlugin in ovos-plugin-manager no longer bakes in the enclosure.* handlers, and modern visual output is done through GUIInterface (OVOS-GUI-1). This package exists so hardware enclosure plugins keep a stable, dependency-light home for the listener side of the protocol. It does not reimplement GUI templates.

Install

pip install ovos-ui-enclosure-protocol

Implementing a listener

from ovos_ui_enclosure_protocol import EnclosureProtocolListener

class MyEnclosure(EnclosureProtocolListener):
    def __init__(self, bus):
        self.bus = bus
        self.register_enclosure_namespace()

    def on_eyes_color(self, message=None):
        ...  # drive the hardware

    def shutdown(self):
        self.shutdown_enclosure_namespace()

Every handler defaults to a no-op, so a plugin only overrides the commands its hardware supports. ovos-PHAL-plugin-mk1 is the reference listener implementation.

Documentation

License

Apache-2.0

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ovos_ui_enclosure_protocol-1.0.0a3.tar.gz (9.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ovos_ui_enclosure_protocol-1.0.0a3-py3-none-any.whl (10.8 kB view details)

Uploaded Python 3

File details

Details for the file ovos_ui_enclosure_protocol-1.0.0a3.tar.gz.

File metadata

File hashes

Hashes for ovos_ui_enclosure_protocol-1.0.0a3.tar.gz
Algorithm Hash digest
SHA256 53411d65fde33a27dd7b3709062d2160c9d2403d9124a43f0eae5dbb21bfed10
MD5 2c54c076338ed494c7aac858df541f0d
BLAKE2b-256 0c983394463c1485b8dafba8fdfca2d0c8cfdfb0880e9d1c606ae414a2aecb38

See more details on using hashes here.

File details

Details for the file ovos_ui_enclosure_protocol-1.0.0a3-py3-none-any.whl.

File metadata

File hashes

Hashes for ovos_ui_enclosure_protocol-1.0.0a3-py3-none-any.whl
Algorithm Hash digest
SHA256 8b3cb48518ebf1d0d07a5aa18c86a0800a0faa08126a518cdfe686824e31c137
MD5 22e4370042c533751fdd0bf62e602ae7
BLAKE2b-256 865b44f926ace89335a4f6ad5d177cb96f71360e3ac3e23996932b5fb3b7853b

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

1.0.0a3 This release

2 files

0.0.1

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page