hippasos在接收到预定义的mqtt消息时播放预配置的声音文件。
Hippasos的Python项目详细描述
πηαα_ [1](hippasos)在接收到 预定义的MQTT消息。
PELOPS概述
Hippasos是基于mqtt的微服务集合的一部分 pelops。微服务概述 架构和示例可以在 (http://gitlab.com/pelops/pelops)。
对于用户
安装核心功能
核心功能的先决条件是:
sudo apt install python3 python3-pip python3-pygame sudo pip3 install paho-mqtt pyyaml pygame pelops
通过PIP安装:
sudo pip3 install epidaurus
若要更新到最新版本,请将--upgrade作为前缀添加到 pip3行以上。
通过Gitlab安装(可能需要其他软件包):
git clone git@gitlab.com:pelops/hippasos.git cd hippasos sudo python3 setup.py install
这将安装以下shell脚本:*hippasoss
脚本cli参数是:*'-c'/'-config'-config文件 (必需)*'-v'-详细输出(可选)*'-版本'-显示 版本号和退出
yaml配置
一个yaml[2]文件必须包含四个根块:*mqtt-
MQTT地址、MQTT端口和凭据文件凭据文件的路径
(包含两个条目的文件:mqtt user、mqtt password)*logger
-哪个日志级别和要使用的文件
*声音映射-声音事件列表
mqtt: mqtt-address: localhost mqtt-port: 1883 credentials-file: ~/credentials.yaml log-level: WARNING logger: log-level: DEBUG log-file: hippasos.log sound-mappings: - name: bell_building # unique name for sound event sound-file: ../resources/church_bell.ogg # uri to sound file. must be ogg or wav. topic-sub: /test/button1 # react to published values on this channel message-value: PRESSED # react to this message content volume: 0.1 # 0..1 - volume relative to system volume active: True # entry ignored if set to False
系统d
- 添加systemd示例。
对于开发人员
开始
项目由两个主要模块组成:soundservice-creates, 启动和停止声音事件。*soundevent-订阅主题 并在接收到特定消息时播放声音文件。
待办事项
- 使可播放声音的最大数量可配置。
- …
其他
代码是为python3编写的(并在 覆盆子皮零与覆盆子伸展)。
Merge requests/ bug reports总是 欢迎。
[1] | The icon used for this project is not Hippasos, son of pelops but it depicts Hippasus of Metapontum. |
[2] | Currently, pyyaml is yaml 1.1 compliant. In pyyaml On/Off and Yes/No are automatically converted to True/False. This is an unwanted behavior and deprecated in yaml 1.2. In copreus this autoconversion is removed. Thus, On/Off and Yes/No are read from the yaml file as strings (see module baseclasses.myconfigtools). |
推荐PyPI第三方库
- 热门话题
- Java泛型和基类 ProcessBuilder或DefaultExecutor启动的“RunAs”子进程的java读取标准输出 java应用程序在尝试登录时突然停止 Java:神秘的Java未捕获异常处理程序[带代码] java JavaFX NumberAxis自动范围无限循环 最新版本和旧版本冲突的java双Maven依赖关系 java如何导入带有部署变量类名的静态函数? 编译器构造不同的JDK更新会产生不同的Java字节码吗? java无法在struts 1.1中上载任何超过250 MB大小的文件 java调整jcombobox下拉菜单的宽度 java如何在某些情况下忽略@SQLDelete注释 在Eclipse for Java EE developers edition中禁用HTML警告 java HttpUrlConnection重置请求属性 java@Provider资源未在rest应用程序中注册 java TOP N使用JPA连接 java在使用反射调用方法时区分int和Integer参数