# sonos-inv — Sonos-Inventar/Verifikation (zero-dep, KEIN MCP) Bewusste Entscheidung statt Sonos-MCP-Container: für unseren Zweck (Bestand erheben + VLAN-Umzug verifizieren) reicht ein kleines stdlib-Python-Skript über die Sonos-`:1400`-API. Ein SoCo-MCP-Container bräuchte einen gepatchten Fork (Multicast-only, kein Seeding, kein Image) und je VLAN-Partition einen Seed — Aufwand ohne Mehrwert, solange wir kein Playback per Chat steuern. **Sonos hat keine API zum WLAN-Umstellen** — daher hier nicht abgebildet. ## Nutzung ``` ./sonos-inv.py # nur lokales Segment (SSDP) ./sonos-inv.py --seeds 10.40.40.199 # + VLAN-40-Partition (BF-Standard) ./sonos-inv.py --seeds 10.40.40.199 --json # maschinenlesbar ./sonos-inv.py --seeds 10.40.40.199 --verify 40 # Exit!=0 wenn ein Gerät nicht in VLAN 40 ``` Von einem **VLAN-1-Host** ausführen (z.B. Mac `10.40.41.82`); inter-VLAN-L3 ist offen (bis TP5), daher sind die VLAN-40-Geräte per Seed-IP erreichbar. ## Gotcha — Discovery ist pro VLAN partitioniert SSDP-Multicast quert keine VLANs → ein Seed **je Partition** nötig. Lokales SSDP deckt das Segment des ausführenden Hosts ab (VLAN 1), `--seeds 10.40.40.199` zieht die VLAN-40-Partition dazu. Bestand & Migrationsplan: `../../docs/sonos-inventar.md`.