5d60d33db1
Volledige Foodlinkk Command Center uitbreiding met social automatisering, reclamefolder filters, Proxmox monitoring en documentatie.
53 lines
1.5 KiB
Markdown
53 lines
1.5 KiB
Markdown
# Architectuur
|
||
|
||
## Overzicht
|
||
|
||
```mermaid
|
||
flowchart TB
|
||
subgraph vm106 [VM106 - 10.4.7.18]
|
||
Cockpit[Cockpit :8600]
|
||
ToolsAPI[Tools API :8700]
|
||
Gitea[Gitea :3001]
|
||
PG[(PostgreSQL foodlinkk_db)]
|
||
Cockpit --> ToolsAPI
|
||
Cockpit --> PG
|
||
ToolsAPI --> PG
|
||
end
|
||
subgraph vm105 [VM105 - 10.4.7.19]
|
||
Ollama[Ollama / Hermes]
|
||
Chroma[ChromaDB]
|
||
end
|
||
subgraph proxmox [Proxmox - 10.4.7.14]
|
||
Nodes[VM105 + VM106]
|
||
end
|
||
Cockpit --> Ollama
|
||
ToolsAPI --> Ollama
|
||
ToolsAPI --> proxmox
|
||
```
|
||
|
||
## Lagen
|
||
|
||
1. **Presentation** — Cockpit templates (Jinja2), Alpine.js, neo CSS thema
|
||
2. **API gateway** — Cockpit routes proxyen naar Tools API waar nodig (`retail.py`, `ops_api.py`)
|
||
3. **Services** — Tools API connectors (reclamefolder, Proxmox, RSS, CBS, PDOK)
|
||
4. **Data** — PostgreSQL met migraties `001`–`016`
|
||
5. **Agents** — Souls in `agent_souls`, events in `agent_events`, mesh op `/agents`
|
||
|
||
## Marketing automatisering
|
||
|
||
- Upload → `marketing_media` tabel + `/static/uploads/marketing/`
|
||
- Publish → `POST /api/marketing/publish` → BackgroundTasks → `social_publish_jobs`
|
||
- Credentials → `social_integrations` (Settings tab Social API's)
|
||
- Zonder keys: `skipped_not_configured` per kanaal
|
||
|
||
## IT Ops
|
||
|
||
- `tools-api/app/connectors/proxmox.py` — SSH/API naar Proxmox host
|
||
- Snapshots in `infra_snapshots`
|
||
- Cockpit `/ops` — SVG topologie met pulse animaties
|
||
|
||
## Packaging
|
||
|
||
- Python generator (`svgwrite`, Pillow, `python-barcode`, reportlab)
|
||
- Endpoints onder `/packaging/*` (Tools API) + Cockpit UI `/packaging`
|