The library should discover the first device via a multicast and then read in the zones and devices from the lists /listDevices and /getZones.