控制你的西西弗斯动态艺术表(sisyphus industries.com)

sisyphus-control的Python项目详细描述


控制你的Sisyphus Kinetic Art Table 来自python 3.6和asyncio

此初始版本主要针对与家庭自动化系统(如Home Assistant

  • 状态查询(播放/暂停/当前播放列表/当前/曲目/亮度/速度)
  • 播放控制(播放/暂停/随机播放/循环/设置播放列表/设置曲目)
  • 工作台控制(移动速度、LED亮度)

用法示例

在网络上查找表格

查找本地网络上所有表的IP地址。这是一个非常天真的搜索;它假设您的子网 掩码是255.255.255.0

from sisyphus_control import Table

ip_addrs = await Table.find_table_ips()

一旦您知道IP地址,请连接到表:

async with await Table.connect(ip_addr) as Table:
  # Do stuff here

更改通知

注册状态更改通知:

table.add_listener(my_listener)

基本控制

除了查询表的当前状态的一系列属性之外,Table还有几个方法 允许简单控制:

await table.set_brightness(1.0)  # Set maximum LED brightness
await table.set_speed(0.5)  # Set half speed
await table.play()  # Resume playing (if not already playing)

使用播放列表和曲目

PlaylistTrack对象分别表示播放列表和曲目。以下代码将开始播放 默认播放列表,从名为“hep”的曲目开始(注意,播放列表和曲目都不需要 唯一命名:

default_playlist = table.get_playlists_named("Default Playlist")[0]
hep_track = default_playlist.get_tracks_named("Hep")[0]
await hep_track.play()

未来机会

以下功能将是合理的;我很乐意接受拉取请求:

  • 播放列表编辑
  • 将曲目上载到表
  • 跟踪缩略图渲染
  • 表格管理(WiFi设置等)
  • 与西西弗斯云的互动

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

推荐PyPI第三方库


热门话题
JavaSpringBootHibernate5忽略@Table和@Column   java readLine是如何工作的?   java除了Oracle的JVM(windows)之外,还有什么BSD许可的替代方案吗?   javascript处理程序执行导致异常:所需的MultipartFile参数“file”不存在   java如何检查url是否与标识符匹配?   java在对象创建之后实现一个接口   java安卓:如何将github库放入项目中   java如何制作自定义文本组件?   如何在java中更新属性文件   java Hibernate持久映射   JavaSpring批处理如何从postgres读取数据,然后在步骤中写入数据   java应用程序已在Android Emulator Eclipse中停止   java找不到参数[org.jetbrains.kotlin:kotlinstdlibjdk7:1.3.50]的方法实现()   java AWS DynamoDB如何从数据库中获取只有一个字段的对象   在使用ajax进行表单提交时,java无法阻止默认表单提交   集合如何在Java中定义基于两个变量进行比较的比较器   多线程基准测试Java中的多线程集合   java如何通过浏览器运行终端程序?