Skip to main content

Chatterbox Messagebus Client

Project description

Chatterbox Bus Client

This module is a simple interface for the chatterbox messagebus and can be used to connect to chatterbox, send messages and react to messages sent by the Chatterbox system.

MessageBusClient()

The MessageBusClient() If no arguments are provided it will try to connect to a local instance of chatterbox core on the default endpoint and port.

Message()

The Message object is a representation of the messagebus message, this will always contain a message type but can also contain data and context. Data is usually real information while the context typically contain information on where the message originated or who the intended recipient is.

Message('MESSAGE_TYPE', data={'meaning': 42}, context={'origin': 'A.Dent'})

AES encryption is supported by setting a key in /etc/chatterbox/bus.conf

Examples

Below are some a couple of simple cases for sending a message on the bus as well as reacting to messages on the bus

Sending a message on the bus.

from chatterbox_bus_client import MessageBusClient, Message

print('Setting up client to connect to a local chatterbox instance')
client = MessageBusClient()
client.run_in_thread()

print('Sending speak message...')
client.emit(Message('speak', data={'utterance': 'Hello World'}))

Catching a message on the messagebus

from chatterbox_bus_client import MessageBusClient, Message

print('Setting up client to connect to a local chatterbox instance')
client = MessageBusClient()


def print_utterance(message):
    print('Mycroft said "{}"'.format(message.data.get('utterance')))


print('Registering handler for speak message...')
client.on('speak', print_utterance)

client.run_forever()

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

chatterbox_bus_client-0.0.11.tar.gz (14.4 kB view details)

Uploaded Source

Built Distribution

chatterbox_bus_client-0.0.11-py3-none-any.whl (16.1 kB view details)

Uploaded Python 3

File details

Details for the file chatterbox_bus_client-0.0.11.tar.gz.

File metadata

File hashes

Hashes for chatterbox_bus_client-0.0.11.tar.gz
Algorithm Hash digest
SHA256 758b2e0c3d099de04c9591128edddf77ccc4fc4528fd56332f2b3cbb3375c14f
MD5 58bd8a6280ffa5661a77b8fdaaf0b7a4
BLAKE2b-256 40c8b546e4a6959ec74a9fced13e47c1a582a15c0b1cd17ab76d35bee1b26f48

See more details on using hashes here.

File details

Details for the file chatterbox_bus_client-0.0.11-py3-none-any.whl.

File metadata

File hashes

Hashes for chatterbox_bus_client-0.0.11-py3-none-any.whl
Algorithm Hash digest
SHA256 a453c7d0b2b28a048f48cd35be71097a62eb86036259d21f364382b296569c4d
MD5 d6532a2dc10fb7742325fa9b9044e4d1
BLAKE2b-256 b3dbcdcf8686e1685f36df0d06d9b0864e4cffac7e4efd15b689ed5c7fe1e79b

See more details on using hashes here.

Supported by

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