// Package speaker holds protocol-level constants for the Bose SoundTouch // speaker's local API surface: the well-known HTTP port, the request paths // exposed by every device, and the on-device file locations the migration // flow needs to know about. // // This package is intentionally a leaf with no internal dependencies, so // any layer can import it (client library, service, CLI, tests) without // introducing a cycle or a cross-topic edge. Anything speaker-shaped that // would otherwise be duplicated between packages belongs here. package speaker // HTTPPort is the well-known port the SoundTouch device exposes its local // API on (e.g. /info, /presets, /group). const HTTPPort = 8090 // UPnPPort is the port the SoundTouch device exposes its UPnP/DLNA // MediaRenderer on, including the AVTransport control endpoint // (/AVTransport/Control). Distinct from HTTPPort. const UPnPPort = 8091 // Well-known HTTP paths the SoundTouch device serves on HTTPPort. const ( DeviceInfoPath = "/info" PresetsPath = "/presets" RecentsPath = "/recents" ) // On-device filesystem paths that the migration/sync flow needs to read or // write over SSH. These live in the device's persistence area and are not // part of the HTTP surface. const ( SourcesFileLocation = "/mnt/nv/BoseApp-Persistence/1/Sources.xml" GroupServiceFileLocation = "/mnt/nv/BoseApp-Persistence/1/GroupService.xml" )