55 lines
1.1 KiB
Markdown
55 lines
1.1 KiB
Markdown
# USDTMan
|
||
|
||
TRON USDT TRC20 收款监听服务 - 基于交易记录扫描 + 区块确认数验证
|
||
|
||
## 功能
|
||
|
||
- 实时监听多个 TRON 地址的 USDT 收款
|
||
- 区块确认数验证(默认6个确认)
|
||
- WebSocket 实时推送收款通知
|
||
- HTTP API 管理监听地址
|
||
|
||
## API 使用方式
|
||
|
||
```go
|
||
// 创建监听器
|
||
uman := usdtman.NewUSDTMan([]string{"地址1", "地址2"}, "API_KEY")
|
||
|
||
// 设置收款回调
|
||
uman.OnPaymentComplete(func(payment *usdtman.USDTPayment) {
|
||
fmt.Printf("收到 %.6f USDT,确认数: %d\n", payment.Amount, payment.Confirmations)
|
||
})
|
||
|
||
// 启动监听
|
||
uman.Start()
|
||
|
||
// 停止监听
|
||
uman.Stop()
|
||
```
|
||
|
||
## 运行
|
||
|
||
```bash
|
||
cd cmd/server
|
||
go run main.go
|
||
```
|
||
|
||
访问 http://localhost:8084
|
||
|
||
## 接口
|
||
|
||
- `POST /start` - 启动监听
|
||
- `POST /stop` - 停止监听
|
||
- `POST /add-address` - 添加监听地址
|
||
- `POST /remove-address` - 移除地址
|
||
- `GET /list-addresses` - 列出所有地址
|
||
- `GET /payments` - 获取收款历史
|
||
- `WS /ws` - WebSocket 连接
|
||
|
||
## 确认机制
|
||
|
||
- 扫描地址的最近交易记录
|
||
- 计算区块确认数(当前区块 - 交易区块)
|
||
- 仅在确认数 >= 6 时触发回调
|
||
- 自动去重,避免重复处理
|