Metadata-Version: 2.4
Name: tinet-clink2-cli
Version: 0.0.2
Summary: Clink2 OpenAPI CLI
Requires-Python: >=3.10
Description-Content-Type: text/markdown
Requires-Dist: click>=8.0
Requires-Dist: requests>=2.28
Provides-Extra: dev
Requires-Dist: pytest>=7.0; extra == "dev"
Requires-Dist: responses>=0.25; extra == "dev"
Requires-Dist: build>=1.0; extra == "dev"

Clink2 命令行客户端，封装 OpenAPI 接口，与 [智慧服务平台开发者中心](https://develop.clink.cn) 中参数与响应一致，适合脚本化集成与 Agent 调用。

**当前版本：** `0.0.2`  
**PyPI：** https://pypi.org/project/tinet-clink2-cli/

## 功能概览

| 子命令 | 说明 |
|--------|------|
| **`config`** | 本地凭证管理 |
| **`ivr`** | 语音导航查询：列表、节点列表 |
| **`voicemail`** | 留言箱设置：查看留言箱列表 |

所有出站 HTTP 请求自动附加：
- `X-Trace-Id: {UUID}`
- `X-Clink2-CLI-Version: {CLI 版本}`

本地默认写入 JSON Lines 日志：`~/.clink2/logs/clink2.log`（单文件最大 10MB，滚动保留 5 个）。

## 环境要求

- Python **≥ 3.10**
- 运行时需访问公有云接入地址，例如 `https://api-bj.clink.cn` / `https://api-sh.clink.cn`
- 需在管理后台获取 AccessKeyId / AccessKeySecret（系统管理 → 安全设置 → 接口密钥）

## 安装

从 [PyPI](https://pypi.org/project/tinet-clink2-cli/) 安装（推荐）：

```bash
pip install tinet-clink2-cli
tinet-clink2-cli --version   # 0.0.2
tinet-clink2-cli --help
```

指定版本或升级：

```bash
pip install 'tinet-clink2-cli==0.0.2'
pip install --upgrade tinet-clink2-cli
```

macOS 等受限环境可使用 [pipx](https://pipx.pypa.io/)：

```bash
pipx install tinet-clink2-cli
```

## 配置凭证

**配置文件：** `~/.clink2/config.json`

配置示例：

```bash
tinet-clink2-cli config set \
  --accessKeyId your_access_key_id \
  --accessKeySecret your_access_key_secret \
  --endpoint https://api-bj.clink.cn \
  --expires 60 \
  --log true

tinet-clink2-cli config show
```

默认接入地址为北京：`https://api-bj.clink.cn`。`config show` 会对 AccessKeySecret 脱敏。

## 快速示例

顺序与上方「功能概览」一致。完整取值见各子命令 `--help` 或 [开发者中心](https://develop.clink.cn)。

```bash
# config
tinet-clink2-cli config show

# ivr
tinet-clink2-cli ivr nodes --ivrName your_ivr_name
tinet-clink2-cli --json ivr list

# dry-run：仅校验入参与配置，不调用服务端（是否写日志取决于 config.log）
tinet-clink2-cli --dry-run ivr list
tinet-clink2-cli --dry-run voicemail list --offset 0 --limit 10

# verbose：向 stderr 打印 url / method / 版本 Header / TraceId / result（不含 body）
tinet-clink2-cli --verbose --json voicemail list
```

全局选项：
- `--json`：机器可读 stdout
- `--dry-run`：本地校验与预览，不发请求
- `--verbose`：stderr 排障

## 安全提示

- 勿将 AccessKeySecret 写入仓库、截图或日志外发渠道。
- `config set --log false` 为用户显式关闭本地审计；关闭后排障将缺少本地 JSON 日志。

## 帮助与 API 文档

```bash
tinet-clink2-cli --help
tinet-clink2-cli config --help
tinet-clink2-cli ivr --help
tinet-clink2-cli voicemail --help
```

OpenAPI 契约与字段说明见 [智慧服务平台开发者中心](https://develop.clink.cn)。
