# next-channels
**Repository Path**: iscas-incubator/next-channels
## Basic Information
- **Project Name**: next-channels
- **Description**: 多协议交互框架:如HTTP/MQTT/Socket over QUIC/UDP/TCP
- **Primary Language**: Rust
- **License**: Apache-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 1
- **Forks**: 0
- **Created**: 2025-08-29
- **Last Updated**: 2025-11-20
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# next-channels
## 介绍
本项目的目标是实现各种协议到函数的转换,实现协议和处理逻辑分离,以适应典型边缘异构协议的场景。在此基础上,支持接口文档、单元测试等文档代码的自动生成。
## 软件架构

## 使用说明
## 开发说明
### 支持框架
- HTTP 1.x框架
- [Actix](https://github.com/actix/actix-web)
- [Axum](https://github.com/tokio-rs/axum)
- HTTP 3.x框架
- [Quinn](https://github.com/quinn-rs/quinn)
- TLV框架
- [tlv](https://github.com/lexxvir/tlv-parser)
### 支持协议
- HTTP over
- TCP
- TLV over
- QUIC
### 生成文档
- [生成http接口文档](docs/manual/generate-api-command.md)
## 设计说明
- [接口设计](docs/design/interface.md)
## 依赖工具
| 作用 | 规范 | 工具 |
|----------|-------|---------|
| HTTP接口文档 | swagger| utoipa |
| UML典型图 | UML | mermaid |
| 单元测试 | / | rstest |
## [支持模式](src/schemas)
| 交互模式 | 传输模式 | 交互方向 | 典型模式 |
|------|-----------------|------|-------------------------------------------------|
| 有限交互 | 离散消息
(如文本) | 单项 | / |
| | | 双向 | Request-Response, Publisher-Subscriber, Put-Get |
| | 连续字节流
(如文件流) | 单向 | / |
| | | 双向 | Request-Response, Publisher-Subscriber, Put-Get |
| 无限交互 | 离散消息
(如文本) | 单向 | Client Push, Server Push |
| | | 双向 | / |
| | 连续字节流
(如文件流) | 单向 | Client Push, Server Push |
| | | 双向 | / |
## 主要工具
### [QUIC客户端](./clients/quinn-tlv-client)
```angular2html
cargo run [tag] [string]
```
## 开发计划
- 0.1.x: 支持HTTP/TCP、TLV/QUIC、ActiveMQ/TCP
- 0.2.x: 支持SQL、NoSQL、Key-Value的CRUD原子操作
- 0.3.x: 支持接口文档、设计文档、测试文档的自动生成