4个版本 (2个破坏性更改)

0.4.0 2020年2月18日
0.3.0 2019年11月7日
0.2.1 2019年7月12日
0.2.0 2019年7月12日

#6 in #zoom

MIT 许可证

26KB
412

zoom-lomax: 下载Zoom录音

这是一个非常简单的实用程序,设计为每天通过cron运行,可以从您的Zoom账户收集“现场录音”。

它将下载在过去“天数”天内找到的任何录音,使用会议的本地时区计算。

要使用,按以下方式填充 ~/.zoom-lomax

{
    "api_key": "sdk_api_key",
    "api_secret": "sdk_api_secret",
    "user": "[email protected]",
    "output_dir": "/home/user/zoom-recordings/",
    "days": 1,
    "notify": "Your Name <[email protected]>"
}

daysnotify 是可选的,前者默认为1天。

(您还可以使用 -c 命令行选项来指定不同的配置文件。)

它们没有明确说明,但您需要Pro账户才能获取密钥和秘密。账户所有者必须遵循以下步骤

https://marketplace.zoom.us/docs/sdk/native-sdks/preface/sdk-keys-secrets

在“创建新的SDK凭据”下。

构建和运行

用Rust编写;安装Rust后使用 rustup,构建

$ cargo build

并运行

$ ./target/debug/zoom-lomax

AWS Lambda支持

这也可以作为lambda函数运行。在这种情况下,不会进行下载,通知电子邮件内容提供URI和时间的列表。用 https://github.com/emk/rust-musl-builder 构建这个函数最容易。函数还返回一个包含所有匹配录音及其URL的负载。

上面的JSON配置应作为Lambda处理程序的事件提供,但 api_keyapi_secret 应分别引用参数存储名称,每个名称都包含一个具有值的 SecureString。目前忽略 output_dir

电子邮件通知通过Amazon SES工作,因此必须进行配置(验证域名和潜在的目标电子邮件)。目前将其硬编码为使用 us-east-1 区域。

Lambda函数需要以具有SES和SSM参数存储权限的角色运行(例如 AmazonSESFullAccessAmazonSSMReadOnlyAccess)。

依赖关系

~36–49MB
~1M SLoC