客户机消息Mycroft

mycroft-messagebus-client的Python项目详细描述


Mycroft总线客户端

该模块是mycroft消息总线的一个简单接口,可用于连接mycroft、发送消息和对mycroft系统发送的消息作出反应。在

MycroftBusClient()

可以将MycroftBusClient()对象设置为连接到任何主机和端口以及该主机上的任何端点。这使得它具有很强的版本性,可以在主总线和gui总线上工作。如果没有提供参数,它将尝试连接到默认端点和端口上mycroftr核心的本地实例。在

消息()

Message对象是messagebus消息的表示,它将始终包含消息类型,但也可以包含数据和上下文。数据通常是真实的信息,而上下文通常包含关于消息的来源或目标接收者是谁的信息。在

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

示例

下面是一些在总线上发送消息的简单案例 作为对总线上信息的反应

在公共汽车上发送信息。

^{pr2}$

在messagebus上捕捉消息

frommycroft_bus_clientimportMessageBusClient,Messageprint('Setting up client to connect to a local mycroft instance')client=MessageBusClient()defprint_utterance(message):print('Mycroft said "{}"'.format(message.data.get('utterance')))print('Registering handler for speak message...')client.on('speak',print_utterance)client.run_forever()

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
Android XML阅读器出现java错误   重新索引Solr:java。lang.OutOfMemoryError:Java堆空间解决方案   java安装eclipse插件BPMN2Modeler   java无法使用SpringMVC打开WEBINF子文件夹中的jsp   使用Spring安全性和AJAX身份验证的java安全Rest API   java为什么我们必须将InputStream转换为ByteArrayOutputStream?   javajacksonxml重复标记名   java如何在ScrollPanel中绝对定位小部件?   java自动售货机程序   java为什么变量的作用域有问题?   使用while循环的Java菜单循环   java使用python生成X509Certificate   java如何从约会EWS的主实例获取事件数?   用java中的数组对2组分数进行排序   JavaSpring批处理自定义DB模式初始化