bbriatte / homebridge-soundtouch-platform

Homebridge & SoundTouch using Lightbulb to change the volume
BSD 3-Clause "New" or "Revised" License
17 stars 8 forks source link

homebridge-soundtouch-platform

npm version npm downloads

Bose SoundTouch plugin for Homebridge

This allows you to control your SoundTouch devices with HomeKit and Siri.

Installation

  1. Install homebridge using: npm install -g homebridge
  2. Install this plugin using: npm install -g homebridge-soundtouch-platform
  3. Update your configuration file. See the sample below.

Configuration

Example config.json to discover all SoundTouch accessories

{
    "platform": "SoundTouchPlatform",
    "name": "SoundTouch",
    "discoverAllAccessories": true,
    "global": {
        "pollingInterval": 2000
    }
}

Example config.json to register 1 SoundTouch accessory

{
    "platform": "SoundTouchPlatform",
    "name": "SoundTouch",
    "accessories": [
        {
            "name": "Speaker Bathroom",
            "room": "Bathroom",
            "volume": {
              "unmuteValue": 40,
              "maxValue": 80
            }        
        }
    ]
}

Example config.json for multiple speakers and presets:

{
    "platform": "SoundTouchPlatform",
    "name": "SoundTouch",
    "accessories": [
        {
            "name": "Speaker Bathroom",
            "ip": "<ip>",
            "volume": {
              "unmuteValue": 40,
              "maxValue": 80,
              "mode": "lightbulb"
            },
            "presets": [
                {
                    "name": "Radio 3",
                    "index": 3
                }
            ]
        },
        {
            "name": "Speaker Kitchen",
            "room": "Kitchen",
            "pollingInterval": 2000,
            "verbose": true,
            "volume": {
              "mode": "speaker"
            },
            "presets": [
                {
                    "name": "Radio 1",
                    "index": 1
                },
                {
                    "name": "Radio 2",
                    "index": 2
                }
            ]
        }
    ],
    "global": {
        "sources": [
            {
                "source": "QPLAY",
                "enabled": false
            }
        ]
    }
}

Platform element

Required fields

Optional fields

global element

Optional fields

Volume element

Optional fields

VolumeMode enum

Preset element

Required fields

Optional fields

Source element

Required fields

Optional fields

Global element

Optional fields