Skip to content

Releases: ebaauw/homebridge-zp

v1.0.3

25 Jul 18:50
0b4669c
Compare
Choose a tag to compare

Enhancements:

  • Report whether zone player has physical controls (Sonos Boost doesn't);
  • Only expose Lock Physical Controls in LED service when zone player has them.
  • Only use one input source for grouping:
    • It shows Leave group for zone players that are already a member of a group;
    • It shows Join coordinator for ungrouped zone players, other than the target coordinator;
    • It is hidden for the target coordinator zone player.
  • Show correct input source on TV accessory tile in Home app for non-playlist sources.
  • Add tvIdPrefix setting in config.json, to be able to run multiple instances of homebridge-zp on the same network (for testing). See #62.
  • Remove searchTimeout setting from config.json. It's no longer relevant, now we're using dynamic platform accessories.
  • Turn down logging of hidden characteristics.

Bug fixes:

  • Fix crash when your setup includes a Sonos Boost, see #88.
  • Fix timing error during initial setup (when no accessories have yet been persisted to cachedAccessories. The setup of the input list for the TV accessory is still a bit flaky, but stable once the accessories have been persisted.

v1.0.0

23 Jul 22:27
1730a55
Compare
Choose a tag to compare

Finally: v1.0.0 - the best homebridge-zp release ever

  • Dynamic platform accessories (see #1);
  • Select input source from HomeKit (see #8);
  • Select playlist from HomeKit (see #8);
  • Support HomeKit Television service (see #62);
  • Command line utility zp to control a zone player or log event notifications from a zone player.
    Issue zp -h for more info.
  • Automatically detect zone player capabilities (see #75);
  • Once again, homebridge-lib listed as a regular dependency.
  • Fix bug when playing song through Alexa (#81).

v0.4.3

09 Jun 15:36
b0676c5
Compare
Choose a tag to compare

Bump dependencies:

  • homebridge v0.4.50;
  • homebridge-lib v4.2.7 (as peer dependency).

Note that homebridge-lib now needs to be installed separately:

$ sudo npm -g i homebridge-lib homebridge-zp

v0.4.2

08 Jun 21:13
79e0798
Compare
Choose a tag to compare

Bump dependencies:

  • homebridge v0.4.50;
  • Remove dependency on homebridge-lib;
  • Add peer dependency on hblib v0.0.0.

v0.4.0

03 Jun 18:55
478b062
Compare
Choose a tag to compare

Enhancements:

  • Added zpinfo command line tool for retrieving ZonePlayer information. Issue zpinfo -h for help;
  • Added excludeAirPlay key to config.json to exclude zoneplayers that support AirPlay 2 (and already appear in Apple's Home app), see #74. The accessories are still created, but not exposed to HomeKit;
  • Change Model in Accessory Information to include model name and model id (e.g. "Sonos Playbar (ZPS9)" instead only the model id ("ZPS9"));
  • Change debug logging during startup to include the model name as well;
  • Re-subscribe to events, after a zoneplayer has rebooted, so you don't have to restart homebridge or wait for the timeout on the old subscriptions before it works.

Code changes:

  • Refactored the startup logic of homebridge-zp, so detected capabilities (see #75) can be used to configure which zoneplayers are exposed to HomeKit, and how;
    • Start the server for listening to zoneplayer events as soon as first zoneplayer has been discovered, instead of only after homebridge server has started;
    • Create the accessory for each zoneplayer as soon as it's discovered, but delay creating the services and characteristics, until after the homebridge server has started;
    • Subscribe to DeviceProperties events as soon as the accessory has been created, so the discovered capabilities and setup can be used for creating services and characteristics;
    • Subscribe to ZoneGroupTopology events to detect that a zoneplayers has rebooted;
  • Removed whitelists for zoneplayers supporting TV Input and supporting Balance (I'm assuming zoneplayers supporting Audio Input support Balance, not sure if this assumption holds);
  • Changed how Stereo Pairs (that support Balance) are detected;
  • Read zoneplayer's device_description.xml for the model name (e.g. "Sonos Playbar");
  • Added recursive XML parser (XmlParser) that produces standard Javascript also fixes some idiosyncrasies in the Sonos API. For now, only used by zpinfo;
  • Added ZonePlayer API client library (ZpClient) to replace dependency on sonos. Ultimate goal is to generate Javascript API calls from the service control point definitions published by the ZonePlayer. For now, only used by zpinfo.

I don't think there's any breaking changes, but as these enhancements involve quite some refactoring, better make it a minor release.

v0.3.20

31 May 07:08
d2351e0
Compare
Choose a tag to compare

Enhancements:

  • homebridge-zp now subscribes (also) to the DeviceProperties events sent by the zoneplayers, in an attempt to detect the zoneplayer capabilities and setup. On startup, two (amber) messages per zoneplayer are logged:
    [5/31/2019, 8:46:50 AM] [Sonos] Living Room Sonos: detected ZPS9 capabilities (please report if wrong): AirPlay: false, audio input: false, TV input: true
    [5/31/2019, 8:46:50 AM] [Sonos] Living Room Sonos: detected setup (please report if wrong): Home Theatre: true, Stereo Pair: false
    
    As mentioned in the message, please add a comment to issue #75 if homebridge-zp detects the wrong capabilities or setup.
  • Support Amazon Music track meta data, see #71.

v0.3.19

30 May 08:46
0eb75f4
Compare
Choose a tag to compare

Bump dependencies:

  • NodeJS v10.16.0 LTS;
  • homebridge-lib v4.2.5;
  • semver v6.1.1.

v0.3.18

17 May 22:26
aaaad9a
Compare
Choose a tag to compare

Enhancements:

  • Improved detection of TV input;
  • Added config.json.schema, so homebridge-config-ui-x will render a Settings window for homebridge-zp's config.json settings.

Bump dependencies:

  • homebridge-lib v4.2.3.

v0.3.16

24 Apr 18:58
Compare
Choose a tag to compare

Enhancements:

  • Support Track Metadata for Apple Music, see #69.

Bump dependencies:

  • homebridge v0.4.49;
  • homebridge-lib v4.1.1.

v0.3.15

06 Apr 12:50
Compare
Choose a tag to compare

Changes:

  • Add PowerModeSelection characteristic to TV service;
  • Remove handler for uncaught exceptions, as this is now handled by homebridge, see homebridge/homebridge#2190.

Bump dependencies:

  • homebridge v0.4.48;
  • homebridge-lib v4.0.11;
  • semver v6.0.0.