Skip to content

Commit

Permalink
Release 0.7.1 - Updated filter and added enhancedSkip for the appletv…
Browse files Browse the repository at this point in the history
…-enhanced plugin (#715)

Adding two new features to the package:

1 - Enhance the filter option to accept multiple hosts eg. '192.168.1.122:51826' or '192.168.1.11:51551, 192.168.1.11:46047'

2 - Add the ability to use the wording Alexa, skip tv to select an on screen skip button. ie the skip button that appears when watching YouTube videos after a few seconds. This can be enabled with the enhancedSkip option and the appletv-enhanced plugin.

3 - Homebridge 2.0 support

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
  • Loading branch information
NorthernMan54 and github-actions[bot] authored Sep 25, 2024
1 parent caa480f commit 74a86f3
Show file tree
Hide file tree
Showing 17 changed files with 941 additions and 349 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,8 @@ jobs:
branch: ${{ github.ref }}

publish_prod_release:
permissions:
id-token: write
needs: [get_tags, create_documentation]
name: Publish Release Version
if: ${{ needs.get_tags.outputs.BRANCH_NAME == 'main' }}
Expand All @@ -90,6 +92,8 @@ jobs:
npm_auth_token: ${{ secrets.npm_token }}

publish_test_release:
permissions:
id-token: write
needs: [get_tags, create_documentation]
name: Publish Test Version - ${{ needs.get_tags.outputs.BRANCH_NAME }}
if: ${{ needs.get_tags.outputs.BRANCH_NAME != 'main' }}
Expand Down
10 changes: 10 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,16 @@

All notable changes to this project will be documented in this file. This project uses [Semantic Versioning](https://semver.org/).

## 0.7.1 (2023-09-24)

## [Version 0.7.1](https://github.com/northernman54/homebridge-alexa/compare/v0.7.0...v0.7.1)

#### Changes

- Update `filter` to accept a list of addresses and ports ie "192.168.1.11:51551, 192.168.1.11:46047"
- Add config option `enhancedSkip` to allow the wording `Alexa, tv skip` when watching youtube via appletv-enhanced to push the select button on the remote.
- Homebridge 2.0 support

## 0.7.0 (2023-05-30)

## [Version 0.7.0](https://github.com/northernman54/homebridge-alexa/compare/v0.6.9...v0.7.0)
Expand Down
11 changes: 9 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ Country availability - The plugin is available in these countries, English (AU),
* [For Thermostat's only](#for-thermostats-only)
* [Lock / Unlock Doors](#lock--unlock-doors)
* [Temperature sensors](#temperature-sensors)
* [AppleTV ( homebridge-apple-tv or homebridge-apple-tv-remote )](#appletv--homebridge-apple-tv-or-homebridge-apple-tv-remote-)
* [AppleTV ( homebridge-apple-tv, homebridge-apple-tv-remote or homebridge-appletv-enhanced )](#appletv--homebridge-apple-tv-homebridge-apple-tv-remote-or-homebridge-appletv-enhanced-)
* [HomeKit Television](#homekit-television)
* [HomeKit Television - Tested plugins](#homekit-television---tested-plugins)
* [Television Inputs and Channels](#television-inputs-and-channels)
Expand Down Expand Up @@ -232,12 +232,19 @@ Adamo Maisano provided a deeper [comparison](https://github.com/NorthernMan54/ho

* Alexa, what is the temperature in the *device* ( Not supported in Japan )

## AppleTV ( homebridge-apple-tv or homebridge-apple-tv-remote )
## AppleTV ( homebridge-apple-tv, homebridge-apple-tv-remote or homebridge-appletv-enhanced )

* Alexa, pause *device* ( Apple TV )
* Alexa, resume *device* ( Apple TV )
* Alexa, play *device* ( Apple TV )
* Alexa, stop *device* ( Apple TV )
* Alexa, next on *device* ( right arrow )
* Alexa, rewind on *device* ( left arrow )

* Alexa, turn on *device* ( Apple TV )
* Alexa, turn off *device* ( Apple TV )

With the `enhancedSkip` option on the homebridge-appletv-enhanced plugin, and when watching YouTube or other sources, you can use the wording `Alexa, tv skip` or `alexa skip tv` to press the skip button that appears after a little while.

## HomeKit Television

Expand Down
11 changes: 9 additions & 2 deletions config.schema.json
Original file line number Diff line number Diff line change
Expand Up @@ -143,8 +143,8 @@
"title": "<b>Homebridge Instance Filter</b>",
"type": "string",
"placeholder": "eg. 192.168.1.122:51826",
"description": "Limits accessories shared with Alexa to a single homebridge instance. Uses ip address and port of homebridge instance.",
"pattern": "^[^{}/ :\\\\]+(?::\\d+)?$"
"description": "Limits accessories shared with Alexa to particular homebridge instances. Uses ip address and port of homebridge instance, eg. '192.168.1.122:51826' or '192.168.1.11:51551, 192.168.1.11:46047'.",
"pattern": "^(\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}:\\d{1,5})(,\\s*\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}:\\d{1,5})*$"
},
"deviceListHandling": {
"title": "<b>Device List</b>",
Expand Down Expand Up @@ -220,6 +220,12 @@
}
}
}
},
"enhancedSkip": {
"title": "<b>For 'appletv-enhanced', enable skip</b>",
"type": "boolean",
"placeholder": false,
"description": "This option will change the behaviour of the next or skip command of the 'appletv-enhanced' plugin, from skip to select. This will enable the wording 'Alexa tv skip' to press the select button on the Apple TV remote. This is useful for skipping adds on YouTube."
}
}
},
Expand Down Expand Up @@ -251,6 +257,7 @@
"routines",
"debug",
"thermostatTurnOn",
"enhancedSkip",
"deviceListHandling",
{
"key": "deviceList",
Expand Down
7 changes: 6 additions & 1 deletion lib/parse/Characteristic.js
Original file line number Diff line number Diff line change
Expand Up @@ -312,10 +312,15 @@ function _getActions(description, context, devices) {
Characteristic.RemoteKey.INFORMATION = 15;
*/
// "Play", "Pause", "Stop", "Next", "Previous"
// console.log("Remote Key", context);
cookie["Pause"] = messages.cookieV(11, context);
cookie["Play"] = messages.cookieV(8, context);
cookie["Stop"] = messages.cookieV(9, context);
cookie["Next"] = messages.cookieV(7, context);
if (context.options.enhancedSkip === true && context.info.Manufacturer === 'Apple Inc.') {
cookie["Next"] = messages.cookieV(8, context);
} else {
cookie["Next"] = messages.cookieV(7, context);
}
cookie["Previous"] = messages.cookieV(6, context);
break;
default:
Expand Down
3 changes: 2 additions & 1 deletion lib/parse/Homebridge.js
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,8 @@ function Homebridge(devices, context) {
blind: context.blind,
door: context.door,
mergeServiceName: context.mergeServiceName,
thermostatTurnOn: context.thermostatTurnOn
thermostatTurnOn: context.thermostatTurnOn,
enhancedSkip: context.enhancedSkip,
};
this.playback = {};
devices.accessories.accessories.forEach(function (element) {
Expand Down
Loading

0 comments on commit 74a86f3

Please sign in to comment.