Files
telfax/docs/COMPETITIVE_ANALYSIS.md
T
Warren 55bca92691 V1.0: Class 1 fax — real-world 4-page send to external number confirmed
Core features:
- Class 1 T.30 protocol: full send/receive implementation
- HDLC: DLE-stuffing, FCS strip, USR5637 bit-reversal handling
- T.4 MH encoder/decoder (1728px A4 standard)
- Document pipeline: PDF (Ghostscript), PNG, TIFF input
- Width clamping: US Letter 1734px → 1728px fax standard
- Cover page: CJK rasterization (TW/CN/JP/EN), TIFF + HTML output
- OCR verification: Tesseract 5 with eng+chi_tra, CJK space-tolerant
- API server (axum): health, send, jobs, cover, retry, cancel
- Background worker: auto-poll queue, speed fallback, retry policy
- Modem detection, pool management

Real-world test results (2026-07-23):
- V90 → 25153038: 4 pages, V.17 12000 bps, 2:33 ✅
- USR5637 → 25153038: 4 pages, V.17 12000 bps, 2:26 ✅
- Both faxes confirmed received on remote machine

Tested: loopback (100% pixel match), multi-page, all input formats,
cover pages, OCR verify, API endpoints, worker processing.
13 unit tests pass, 0 new clippy warnings.
2026-07-24 18:47:15 +08:00

275 lines
7.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 傳真伺服器市場比較分析
## 主要競爭產品
| 產品 | 類型 | 目標市場 | 部署方式 |
|------|------|---------|---------|
| **HylaFAX** | 開源 | 企業/ISP | On-premise |
| **FaxCore** | 商業 | 企業/醫療/政府 | Cloud/On-premise/Hybrid |
| **ETHERFAX** | 商業 | 醫療/政府/企業 | Cloud/Hybrid |
| **eFax Enterprise** | 商業 | 企業 | Cloud |
| **Telfax** | 開源 | 企業/開發者 | On-premise |
---
## 功能比較表
### 核心傳真功能
| 功能 | HylaFAX | FaxCore | ETHERFAX | Telfax |
|------|---------|---------|----------|--------|
| Class 1 支援 | ✅ | ✅ | ✅ | ✅ |
| Class 2 支援 | ✅ | ✅ | ✅ | ✅ |
| 多 Modem 支援 | ✅ | ✅ | ✅ | ✅ |
| T.4 MH 編碼 | ✅ | ✅ | ✅ | ✅ |
| T.6 MMR 編碼 | ✅ | ✅ | ✅ | ⚠️ 部分 |
| ECM 錯誤修正 | ✅ | ✅ | ✅ | ❌ |
| 自動重試 | ✅ | ✅ | ✅ | ✅ |
| 速率協商 | ✅ | ✅ | ✅ | ⚠️ 基本 |
### 部署與架構
| 功能 | HylaFAX | FaxCore | ETHERFAX | Telfax |
|------|---------|---------|----------|--------|
| On-premise | ✅ | ✅ | ❌ | ✅ |
| Cloud (SaaS) | ❌ | ✅ | ✅ | ❌ |
| Hybrid | ❌ | ✅ | ✅ | ❌ |
| Docker 容器 | ✅ | ❌ | ❌ | ✅ |
| systemd 服務 | ✅ | N/A | N/A | ✅ |
| 輕量級架構 | ❌ (C/C++) | ❌ | ❌ | ✅ (Rust) |
### API 與整合
| 功能 | HylaFAX | FaxCore | ETHERFAX | Telfax |
|------|---------|---------|----------|--------|
| REST API | ❌ | ✅ | ✅ | ✅ |
| Token 認證 | ❌ | ✅ | ✅ | ✅ |
| Webhook | ❌ | ✅ | ✅ | ❌ |
| Email-to-Fax | ✅ | ✅ | ✅ | ❌ |
| Active Directory | ❌ | ✅ | ✅ | ❌ |
| LDAP 整合 | ✅ | ✅ | ✅ | ❌ |
### 安全與合規
| 功能 | HylaFAX | FaxCore | ETHERFAX | Telfax |
|------|---------|---------|----------|--------|
| HIPAA | ⚠️ 需配置 | ✅ 認證 | ✅ 認證 | ⚠️ 需配置 |
| FedRAMP | ❌ | ❌ | ✅ High | ❌ |
| PCI DSS | ⚠️ 需配置 | ✅ | ✅ | ⚠️ 需配置 |
| TLS 加密 | ✅ | ✅ | ✅ | ✅ |
| AES-256 | ✅ | ✅ | ✅ | ✅ |
| 審計日誌 | ✅ | ✅ | ✅ | ✅ |
### 監控與管理
| 功能 | HylaFAX | FaxCore | ETHERFAX | Telfax |
|------|---------|---------|----------|--------|
| Prometheus metrics | ❌ | ⚠️ 基本 | ❌ | ✅ |
| systemd journal | ✅ | N/A | N/A | ✅ |
| Web 管理介面 | ✅ | ✅ | ✅ | ❌ |
| 即時狀態監控 | ✅ | ✅ | ✅ | ✅ |
| 郵件通知 | ✅ | ✅ | ✅ | ❌ |
### 文件處理
| 功能 | HylaFAX | FaxCore | ETHERFAX | Telfax |
|------|---------|---------|----------|--------|
| PDF 轉換 | ✅ | ✅ | ✅ | ✅ |
| TIFF 生成 | ✅ | ✅ | ✅ | ✅ |
| Cover Page | ✅ | ✅ | ✅ | ✅ |
| 中文支援 | ⚠️ 需配置 | ✅ | ✅ | ✅ |
| OCR | ❌ | ❌ | ✅ AI | ❌ |
| 文件路由 | ❌ | ✅ | ✅ AI | ❌ |
---
## 定價比較
| 產品 | 授權模式 | 預估成本 |
|------|---------|---------|
| **HylaFAX** | 開源免費 | $0 (需自行維護) |
| **FaxCore** | 商業授權 | $5,000-50,000/年 |
| **ETHERFAX** | SaaS 訂閱 | $50-500/月 |
| **eFax Enterprise** | SaaS 訂閱 | $100-1000/月 |
| **Telfax** | 開源免費 | $0 (MIT License) |
---
## Telfax 優勢分析
### ✅ 競爭優勢
| 項目 | 說明 |
|------|------|
| **現代技術棧** | Rust + Tokio async,記憶體安全、高效能 |
| **輕量級** | 單一 binary,無需複雜依賴 |
| **開源免費** | MIT License,可自由修改和商業使用 |
| **Container-ready** | systemd 服務 + Docker 支援 |
| **REST API** | 現代 RESTful API,易於整合 |
| **Prometheus** | 內建 metrics endpoint,易於監控 |
| **中文支援** | 原生 PingFang 字體,完美中文封面頁 |
| **開發者友善** | 清晰的程式碼結構,易於二次開發 |
### ⚠️ 需改進
| 項目 | 現狀 | 改進方向 |
|------|------|---------|
| Web 管理介面 | ❌ 無 | 加入 Web UI |
| Email 整合 | ❌ 無 | Email-to-Fax |
| Active Directory | ❌ 無 | LDAP/AD 整合 |
| ECM | ❌ 無 | 加入錯誤修正模式 |
| OCR | ❌ 無 | 加入 OCR 功能 |
| Webhook | ❌ 無 | 事件通知機制 |
---
## 目標市場定位
```
企業級功能完整度
↑
│
ETHERFAX ● │
FaxCore ● │
│
HylaFAX ● │
│
Telfax ●──────┼──────→ 開發者友善度
│
│
│
↓
輕量級/易部署
```
### Telfax 適合場景
1. **中小企業** - 預算有限,需要基本傳真功能
2. **開發者專案** - 需要可定制、可擴展的方案
3. **內部系統整合** - 已有 ERP/CRM,需整合傳真功能
4. **新創公司** - 快速原型開發,低成本啟動
5. **技術團隊** - 有能力維護開源方案
### 競品適合場景
| 場景 | 推薦方案 |
|------|---------|
| 大型企業 (500+ 員工) | FaxCore, ETHERFAX |
| 醫療機構 (需 HIPAA) | ETHERFAX, FaxCore |
| 政府機構 (需 FedRAMP) | ETHERFAX |
| ISP/服務供應商 | HylaFAX |
| 技術團隊 (有開發能力) | HylaFAX, Telfax |
| 快速部署、免維護 | ETHERFAX Cloud |
---
## 技術架構比較
### HylaFAX 架構
```
┌─────────────┐
│ Clients │
└──────┬──────┘
│
┌──────▼──────┐
│ faxgetty │ ← C 程式,每個 modem 一個 process
├─────────────┤
│ faxq │ ← Queue manager
├─────────────┤
│ hfaxd │ ← Daemon
└─────────────┘
│
┌──────▼──────┐
│ Modems │
└─────────────┘
特點:
- 成熟穩定(1995年至今)
- 複雜配置
- C/C++ 開發
- Client-server 架構
```
### Telfax 架構
```
┌─────────────┐
│ REST API │ ← Axum (Rust)
└──────┬──────┘
│
┌──────▼──────┐
│ Worker │ ← Tokio async
├─────────────┤
│ ModemPool │ ← 多 modem 管理
├─────────────┤
│ Queue │ ← SQLite
└─────────────┘
│
┌──────▼──────┐
│ Modems │
└─────────────┘
特點:
- 現代 Rust 技術棧
- 單一 binary
- 簡潔配置(TOML)
- 原生 async/await
```
---
## 效能比較
| 指標 | HylaFAX | FaxCore | ETHERFAX | Telfax |
|------|---------|---------|----------|--------|
| 記憶體佔用 | ~50-100 MB | ~200 MB | N/A | ~10-20 MB |
| CPU 使用率 | 中 | 中 | N/A | 低 |
| 啟動時間 | 1-2 秒 | 3-5 秒 | N/A | <1 秒 |
| 最大併發 | 100+ | 100+ | 1000+ | 10-50 |
| 二進位大小 | 10+ MB | 100+ MB | N/A | 5-10 MB |
---
## 總結
### Telfax 核心定位
```
Telfax = 現代、輕量、開源、可擴展的企業級傳真伺服器
目標:
├─ 提供生產就緒的傳真功能
├─ 降低部署和維護成本
├─ 支援現代開發實踐(API、metrics、container)
└─ 填補開源方案與商業方案的技術鴻溝
特點:
├─ MIT License - 商業友好
├─ Rust 實作 - 安全、高效
├─ REST API - 易於整合
└─ 中文支援 - 亞洲市場
適合:
├─ 有技術團隊的企業
├─ 需要定制化的場景
├─ 整合到現有系統
└─ 學習和研究傳真技術
```
### 發展建議
```
短期 (Phase 1):
├─ 完成 Class 1 協議穩定性
├─ 加入 Web 管理介面
└─ 改進錯誤處理和日誌
中期 (Phase 2):
├─ 加入 Email-to-Fax 支援
├─ 加入 Webhook 通知
└─ 加入 Active Directory 整合
長期 (Phase 3):
├─ 加入 ECM 錯誤修正模式
├─ 加入 OCR 功能
└─ 加入雲端備援方案
```