Skip to main content

Legacy Mark-1 hardware enclosure protocol listener for OpenVoiceOS

Project description

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, the skill-facing helper that emits enclosure.* — 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

Project details


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.0a2.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.0a2-py3-none-any.whl (10.9 kB view details)

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for ovos_ui_enclosure_protocol-1.0.0a2.tar.gz
Algorithm Hash digest
SHA256 41a7f7d527d86779cfd3b9c0eea03bd68ef38f05b3afc533426b6a304b4a1ef5
MD5 e80ce6c2c124a6020342883c9413f40b
BLAKE2b-256 668a637f37220559908826b6ac377c92345d0263568da1e2ae6dc43040d06418

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ovos_ui_enclosure_protocol-1.0.0a2-py3-none-any.whl
Algorithm Hash digest
SHA256 fa2e250239ba9892680430493473eebfb1947b44fd1eb6f5770b047aa827f007
MD5 78f3c523cef7f90ff403f28a9f2c25a0
BLAKE2b-256 b814c2909bad22425db046be3401707a4d47bb1233ace9baf69b733454833bd9

See more details on using hashes here.

Supported by

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