#sdk #streamdeck #api-bindings #rust

rusty-patio

非官方的Rust Stream Deck SDK

6个版本 (3个稳定版本)

1.0.2 2023年3月28日
1.0.1 2023年3月26日
0.1.2 2023年3月8日

#1304硬件支持

每月 36 次下载

GPL-3.0 许可证

44KB
1K SLoC

Rusty Patio (非官方Rust Stream Deck SDK)

crates.io

此仓库包含核心功能,允许用户使用Rust创建Elgato Stream Deck的插件。

如何使用

通过cargo安装

cargoadd rusty-patio

接下来,您需要获取在运行您的插件二进制文件时通过Stream Deck发送的参数,连接到它,然后处理接收到的事件。

// Create a new instance of the arguments that are received by the Stream Deck
let args = StreamDeckArgs::new();

// Connect to the Stream Deck
let client = connect_streamdeck(&args).await;

// Handle the Events
match client {
	Ok(mut client) => {
		while let Some(event) = client.received_events.recv().await {
			match event {
				EventReceived::WillAppear(event) => {
					let _ = client.transmitter.log_message(format!("WillAppear Fired: {:?}", event)).await;
				}
				// the rest of the events you want to handle
			}
		}
	}
}

示例

此仓库的示例目录包含一个可运行的示例计数器插件。您只需运行适用于您平台的构建脚本,然后将生成的 .sdPlugin 目录拖放到Stream Deck插件目录中。

Windows

  1. 运行 build.ps1 脚本
  2. 将目录 target/com.example.rp-example.sdPlugin 复制到 %AppData%/Elgato/StreamDeck/Plugins
  3. 重启您的Stream Deck软件,然后在“自定义”下添加“基本计数器”到按钮,然后按按钮!

macOS

  1. 运行 build.sh 脚本
  2. 将目录 target/com.example.rp-example.sdPlugin 复制到 ~/Library/Application Support/com.elgato.StreamDeck/Plugins
  3. 重启您的Stream Deck软件,然后在“自定义”下添加“基本计数器”到按钮,然后按按钮!

注意: 此仓库处于早期阶段,因此可能存在错误。如果您发现任何错误,请打开问题或PR!

依赖项

~4.5–6.5MB
~121K SLoC