%global _empty_manifest_terminate_build 0 Name: python-mycroft-messagebus-client Version: 0.10.1 Release: 1 Summary: Mycroft Messagebus Client License: Apache-2.0 URL: https://github.com/MycroftAI/mycroft-messagebus-client Source0: https://mirrors.nju.edu.cn/pypi/web/packages/75/da/3840283b54522c5fdf65d0c76a22a6194e0a03266399c9794cb861f06455/mycroft-messagebus-client-0.10.1.tar.gz BuildArch: noarch Requires: python3-pyee Requires: python3-websocket-client %description # Mycroft Bus Client This module is a simple interface for the mycroft messagebus and can be used to connect to mycroft, send messages and react to messages sent by the Mycroft system. ## MycroftBusClient() The `MycroftBusClient()` object can be setup to connect to any host and port as well as any endpont on that host. this makes it quite versitile and will work on the main bus as well as on a gui bus. If no arguments are provided it will try to connect to a local instance of mycroftr 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. ```python Message('MESSAGE_TYPE', data={'meaning': 42}, context={'origin': 'A.Dent'}) ``` ## 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. ```python from mycroft_bus_client import MessageBusClient, Message print('Setting up client to connect to a local mycroft 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 ```python from mycroft_bus_client import MessageBusClient, Message print('Setting up client to connect to a local mycroft 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() ``` %package -n python3-mycroft-messagebus-client Summary: Mycroft Messagebus Client Provides: python-mycroft-messagebus-client BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-pip %description -n python3-mycroft-messagebus-client # Mycroft Bus Client This module is a simple interface for the mycroft messagebus and can be used to connect to mycroft, send messages and react to messages sent by the Mycroft system. ## MycroftBusClient() The `MycroftBusClient()` object can be setup to connect to any host and port as well as any endpont on that host. this makes it quite versitile and will work on the main bus as well as on a gui bus. If no arguments are provided it will try to connect to a local instance of mycroftr 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. ```python Message('MESSAGE_TYPE', data={'meaning': 42}, context={'origin': 'A.Dent'}) ``` ## 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. ```python from mycroft_bus_client import MessageBusClient, Message print('Setting up client to connect to a local mycroft 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 ```python from mycroft_bus_client import MessageBusClient, Message print('Setting up client to connect to a local mycroft 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() ``` %package help Summary: Development documents and examples for mycroft-messagebus-client Provides: python3-mycroft-messagebus-client-doc %description help # Mycroft Bus Client This module is a simple interface for the mycroft messagebus and can be used to connect to mycroft, send messages and react to messages sent by the Mycroft system. ## MycroftBusClient() The `MycroftBusClient()` object can be setup to connect to any host and port as well as any endpont on that host. this makes it quite versitile and will work on the main bus as well as on a gui bus. If no arguments are provided it will try to connect to a local instance of mycroftr 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. ```python Message('MESSAGE_TYPE', data={'meaning': 42}, context={'origin': 'A.Dent'}) ``` ## 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. ```python from mycroft_bus_client import MessageBusClient, Message print('Setting up client to connect to a local mycroft 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 ```python from mycroft_bus_client import MessageBusClient, Message print('Setting up client to connect to a local mycroft 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() ``` %prep %autosetup -n mycroft-messagebus-client-0.10.1 %build %py3_build %install %py3_install install -d -m755 %{buildroot}/%{_pkgdocdir} if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi pushd %{buildroot} if [ -d usr/lib ]; then find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/lib64 ]; then find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/bin ]; then find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/sbin ]; then find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst fi touch doclist.lst if [ -d usr/share/man ]; then find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst fi popd mv %{buildroot}/filelist.lst . mv %{buildroot}/doclist.lst . %files -n python3-mycroft-messagebus-client -f filelist.lst %dir %{python3_sitelib}/* %files help -f doclist.lst %{_docdir}/* %changelog * Fri May 05 2023 Python_Bot - 0.10.1-1 - Package Spec generated