zoomcli 0.2.0__py3-none-win_amd64.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
zoom_cli/__init__.py
ADDED
zoom_cli/__main__.py
ADDED
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Command-line interface for zoom-cli.
|
|
3
|
+
"""
|
|
4
|
+
|
|
5
|
+
from __future__ import annotations
|
|
6
|
+
|
|
7
|
+
import os
|
|
8
|
+
import sys
|
|
9
|
+
import subprocess
|
|
10
|
+
from pathlib import Path
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
def find_native_binary() -> str:
|
|
14
|
+
"""Find the native Rust binary."""
|
|
15
|
+
project_root = Path(__file__).resolve().parent.parent
|
|
16
|
+
target_binary = project_root / "target" / "release" / "zoom"
|
|
17
|
+
if target_binary.exists() and not target_binary.is_dir():
|
|
18
|
+
return str(target_binary)
|
|
19
|
+
|
|
20
|
+
if sys.platform == "win32":
|
|
21
|
+
target_binary = project_root / "target" / "release" / "zoom.exe"
|
|
22
|
+
if target_binary.exists() and not target_binary.is_dir():
|
|
23
|
+
return str(target_binary)
|
|
24
|
+
|
|
25
|
+
raise FileNotFoundError(
|
|
26
|
+
"Could not find the native zoom binary. "
|
|
27
|
+
"Please ensure it was built with 'cargo build --release'."
|
|
28
|
+
)
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
def main() -> int:
|
|
32
|
+
"""Run the zoom command line tool."""
|
|
33
|
+
try:
|
|
34
|
+
native_binary = find_native_binary()
|
|
35
|
+
args = [native_binary] + sys.argv[1:]
|
|
36
|
+
|
|
37
|
+
if sys.platform == "win32":
|
|
38
|
+
completed_process = subprocess.run(args)
|
|
39
|
+
return completed_process.returncode
|
|
40
|
+
else:
|
|
41
|
+
os.execv(native_binary, args)
|
|
42
|
+
return 0
|
|
43
|
+
except FileNotFoundError as e:
|
|
44
|
+
print(f"Error: {e}", file=sys.stderr)
|
|
45
|
+
return 1
|
|
46
|
+
except Exception as e:
|
|
47
|
+
print(f"Error: {e}", file=sys.stderr)
|
|
48
|
+
return 1
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
if __name__ == "__main__":
|
|
52
|
+
sys.exit(main())
|
|
Binary file
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: zoomcli
|
|
3
|
+
Version: 0.2.0
|
|
4
|
+
Classifier: Development Status :: 3 - Alpha
|
|
5
|
+
Classifier: Environment :: Console
|
|
6
|
+
Classifier: Intended Audience :: Developers
|
|
7
|
+
Classifier: Intended Audience :: System Administrators
|
|
8
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
9
|
+
Classifier: Operating System :: OS Independent
|
|
10
|
+
Classifier: Programming Language :: Python :: 3
|
|
11
|
+
Classifier: Programming Language :: Rust
|
|
12
|
+
Classifier: Topic :: Communications :: Conferencing
|
|
13
|
+
Summary: Agent-friendly CLI for the Zoom API
|
|
14
|
+
Home-Page: https://github.com/rvben/zoom-cli
|
|
15
|
+
Author-email: "Ruben J. Jongejan" <ruben.jongejan@gmail.com>
|
|
16
|
+
License: MIT
|
|
17
|
+
Requires-Python: >=3.8
|
|
18
|
+
Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM
|
|
19
|
+
Project-URL: Homepage, https://github.com/rvben/zoom-cli
|
|
20
|
+
Project-URL: Repository, https://github.com/rvben/zoom-cli.git
|
|
21
|
+
|
|
22
|
+
# zoom-cli
|
|
23
|
+
|
|
24
|
+
Agent-friendly CLI for the Zoom API with JSON output, structured exit codes, and schema introspection.
|
|
25
|
+
|
|
26
|
+
## Installation
|
|
27
|
+
|
|
28
|
+
```bash
|
|
29
|
+
# via cargo
|
|
30
|
+
cargo install zoom-cli
|
|
31
|
+
|
|
32
|
+
# via pip
|
|
33
|
+
pip install zoom-cli
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
## Configuration
|
|
37
|
+
|
|
38
|
+
Run `zoom init` to set up credentials interactively, or create `~/.config/zoom-cli/config.toml`:
|
|
39
|
+
|
|
40
|
+
```toml
|
|
41
|
+
[default]
|
|
42
|
+
account_id = "YOUR_ACCOUNT_ID"
|
|
43
|
+
client_id = "YOUR_CLIENT_ID"
|
|
44
|
+
client_secret = "YOUR_CLIENT_SECRET"
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
Requires a [Zoom Server-to-Server OAuth app](https://marketplace.zoom.us/develop/create).
|
|
48
|
+
|
|
49
|
+
## Usage
|
|
50
|
+
|
|
51
|
+
```
|
|
52
|
+
zoom meetings list
|
|
53
|
+
zoom meetings get <id>
|
|
54
|
+
zoom meetings create --topic "Standup" --duration 30
|
|
55
|
+
zoom recordings list --from 2026-01-01
|
|
56
|
+
zoom users me
|
|
57
|
+
zoom reports meetings --from 2026-01-01
|
|
58
|
+
zoom init
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
## License
|
|
62
|
+
|
|
63
|
+
MIT
|
|
64
|
+
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
zoom_cli/__init__.py,sha256=c0Ijs-uM985NxakjCsmXlcKAadGDj_fkF-1HzX690ZQ,251
|
|
2
|
+
zoom_cli/__main__.py,sha256=kixWVKZkwUpsu6EEqA6X2Q1GTOuYr6UPDL26owW0tpo,1470
|
|
3
|
+
zoomcli-0.2.0.data/scripts/zoom.exe,sha256=pI_HM0ve7-9pM_mPP_F9YMB_QJnzwZHHHVky6efe_eA,6841344
|
|
4
|
+
zoomcli-0.2.0.dist-info/METADATA,sha256=4UgtTzWNmwEQx0Vhkhll9TCQMkp79TitElSDDrfHjA8,1660
|
|
5
|
+
zoomcli-0.2.0.dist-info/WHEEL,sha256=uJOc2U-Q1x95AlblQcqMRb3iR4QnPtdI7X2ycPN99rM,94
|
|
6
|
+
zoomcli-0.2.0.dist-info/sboms/zoom-cli.cyclonedx.json,sha256=NY4NHnMZsMxzu0cKvbsGPsG35yKsM2GsMfvT_9jUOJE,175244
|
|
7
|
+
zoomcli-0.2.0.dist-info/RECORD,,
|