UNPKG

@petro-kushchak/homebridge-homepod-radio

Version:

Homebridge accessory for streaming radio to Homepod Mini and Apple TV

158 lines (157 loc) 6.63 kB
{ "pluginAlias": "HomepodRadioPlatform", "pluginType": "platform", "headerDisplay": "Radio speakers are exposed to HomeKit as separate accessories and each needs to be manually paired", "footerDisplay": "**pyatv** must be installed on your system for this plugin to work.", "schema": { "type": "object", "properties": { "name": { "title": "Platform Name", "description": "Platform Name must be unique within the plugin", "type": "string", "required": true, "default": "HomePod Mini Radio" }, "homepodId": { "title": "HomePod Id", "description": "HomePod Id can be MAC address (ex: '00-B0-D0-63-C2-26') or HK name (ex: 'Living Room HomePod')", "type": "string", "default": "", "required": true }, "serialNumber": { "title": "Serial Number", "type": "string", "default": "", "placeholder": "If not specified - HomePod Id will be used", "required": false }, "mediaPath": { "title": "Path to audio/playlist files", "description": "Supported audio formats are MP3, WAV, FLAC, and OGG. Supported playlist formats are M3U and M3U8.", "type": "string", "default": "", "placeholder": "If not specified - will search in user home dir", "required": false }, "httpPort": { "title": "Port for HTTP requests", "description": "Port must be unique within the plugin", "type": "number", "default": "7654", "placeholder": "If set to 0 - HTTP requests are ignored", "required": false }, "enableVolumeControl": { "title": "Enable Volume Control", "type": "boolean", "default": "true", "placeholder": "Enable Volume Control", "required": false }, "volume": { "title": "Volume", "type": "integer", "placeholder": "Volume Level", "required": false, "minimum": 0, "maximum": 100, "condition": { "functionBody": "return model.enableVolumeControl && model.enableVolumeControl === true;" } }, "verboseMode": { "title": "Debug Mode", "type": "boolean", "default": false, "required": false }, "audioFiles": { "title": "Audio Buttons", "type": "array", "items": { "type": "object", "title": " {{ value.name || 'New Audio Button' }}", "expandable": true, "expanded": false, "properties": { "name": { "title": "Name", "type": "string", "placeholder": "Enter audio button name...", "required": true }, "fileName": { "title": "Audio/Playlist File Name", "description": "Supported audio formats are MP3, WAV, FLAC, and OGG. Supported playlist formats are M3U and M3U8.", "type": "string", "placeholder": "Enter audio or playlist file name...", "pattern": "^.+[.](mp3|wav|ogg|flac|m3u|m3u8)$", "required": true }, "volume": { "title": "Audio default volume (0 to ignore volume)", "type": "number", "placeholder": 0, "required": false } } } }, "radios": { "title": "Radio Speakers", "type": "array", "items": { "type": "object", "title": " {{ value.name || 'New Radio' }}", "expandable": true, "expanded": false, "properties": { "name": { "title": "Name", "type": "string", "placeholder": "Enter radio name...", "required": true }, "radioUrl": { "title": "Radio Stream URL", "type": "string", "placeholder": "Enter radio stream url...", "required": true }, "onSwitch": { "title": "Add switch accessory", "type": "boolean", "placeholder": true, "required": false }, "autoResume": { "title": "Resume radio after reboot", "type": "boolean", "required": false }, "metadataUrl": { "title": "Radio Metadata URL", "type": "string", "placeholder": "Enter radio metadata url...", "required": false }, "artworkUrl": { "title": "Radio Artwork URL", "type": "string", "placeholder": "Enter radio Artwork url...", "required": false }, "volume": { "title": "Radio default volume (0 to ignore volume)", "type": "number", "placeholder": 0, "required": false } } } } } } }