flowchart TD %% 定義節點 A[TP-Link Tapo C200<br>1080P 360° 網路攝影機] -->|RTSP / tapo:// 協議| B[go2rtc<br>中繼轉換伺服器] B -->|轉換成 WebRTC| C[WebRTC 串流 <br>ex:/api/webrtc?src=tapo_c200] C -->|HTTPS / WHEP| D[Flutter Web App<br>使用 flutter_webrtc 套件] %% 控制與互動 B -->|HTTP API| E[WebUI / API <br>ex:http://伺服器:1984] %% 子流程說明 subgraph 相機端 A end subgraph 中繼伺服器 B E end subgraph 瀏覽器端 D end %% 風格調整 classDef camera fill:#FF6B6B,stroke:#333,color:white classDef server fill:#4ECDC4,stroke:#333,color:white classDef flutter fill:#45B7D1,stroke:#333,color:white class A camera class B,E server class D flutter %% Group 樣式(半透明背景 + 彩色邊框) classDef cameraGroup fill:#FF6B6B22,stroke:#FF6B6B,stroke-width:2px classDef serverGroup fill:#4ECDC422,stroke:#4ECDC4,stroke-width:2px classDef flutterGroup fill:#45B7D122,stroke:#45B7D1,stroke-width:2px class 相機端 cameraGroup class 中繼伺服器 serverGroup class 瀏覽器端 flutterGroup %% 關鍵:讓 subgraph 標題文字變成白色 %%{init: { "theme": "base", "themeVariables": { "clusterBkg": "#2A2A2A80", %% 半透明深灰背景 "clusterBorder": "#555", "titleColor": "#FFFFFF", %% ← 這行讓標題變白色 "labelColor": "#FFFFFF" } }}%%
TapoC200
