Skip to content

Commit 74a86f3

Browse files
Release 0.7.1 - Updated filter and added enhancedSkip for the appletv-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>
1 parent caa480f commit 74a86f3

17 files changed

+941
-349
lines changed
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,8 @@ jobs:
8080
branch: ${{ github.ref }}
8181

8282
publish_prod_release:
83+
permissions:
84+
id-token: write
8385
needs: [get_tags, create_documentation]
8486
name: Publish Release Version
8587
if: ${{ needs.get_tags.outputs.BRANCH_NAME == 'main' }}
@@ -90,6 +92,8 @@ jobs:
9092
npm_auth_token: ${{ secrets.npm_token }}
9193

9294
publish_test_release:
95+
permissions:
96+
id-token: write
9397
needs: [get_tags, create_documentation]
9498
name: Publish Test Version - ${{ needs.get_tags.outputs.BRANCH_NAME }}
9599
if: ${{ needs.get_tags.outputs.BRANCH_NAME != 'main' }}

CHANGELOG.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,16 @@
22

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

5+
## 0.7.1 (2023-09-24)
6+
7+
## [Version 0.7.1](https://github.com/northernman54/homebridge-alexa/compare/v0.7.0...v0.7.1)
8+
9+
#### Changes
10+
11+
- Update `filter` to accept a list of addresses and ports ie "192.168.1.11:51551, 192.168.1.11:46047"
12+
- 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.
13+
- Homebridge 2.0 support
14+
515
## 0.7.0 (2023-05-30)
616

717
## [Version 0.7.0](https://github.com/northernman54/homebridge-alexa/compare/v0.6.9...v0.7.0)

README.md

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ Country availability - The plugin is available in these countries, English (AU),
6363
* [For Thermostat's only](#for-thermostats-only)
6464
* [Lock / Unlock Doors](#lock--unlock-doors)
6565
* [Temperature sensors](#temperature-sensors)
66-
* [AppleTV ( homebridge-apple-tv or homebridge-apple-tv-remote )](#appletv--homebridge-apple-tv-or-homebridge-apple-tv-remote-)
66+
* [AppleTV ( homebridge-apple-tv, homebridge-apple-tv-remote or homebridge-appletv-enhanced )](#appletv--homebridge-apple-tv-homebridge-apple-tv-remote-or-homebridge-appletv-enhanced-)
6767
* [HomeKit Television](#homekit-television)
6868
* [HomeKit Television - Tested plugins](#homekit-television---tested-plugins)
6969
* [Television Inputs and Channels](#television-inputs-and-channels)
@@ -232,12 +232,19 @@ Adamo Maisano provided a deeper [comparison](https://github.com/NorthernMan54/ho
232232

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

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

237237
* Alexa, pause *device* ( Apple TV )
238238
* Alexa, resume *device* ( Apple TV )
239239
* Alexa, play *device* ( Apple TV )
240240
* Alexa, stop *device* ( Apple TV )
241+
* Alexa, next on *device* ( right arrow )
242+
* Alexa, rewind on *device* ( left arrow )
243+
244+
* Alexa, turn on *device* ( Apple TV )
245+
* Alexa, turn off *device* ( Apple TV )
246+
247+
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.
241248

242249
## HomeKit Television
243250

config.schema.json

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -143,8 +143,8 @@
143143
"title": "<b>Homebridge Instance Filter</b>",
144144
"type": "string",
145145
"placeholder": "eg. 192.168.1.122:51826",
146-
"description": "Limits accessories shared with Alexa to a single homebridge instance. Uses ip address and port of homebridge instance.",
147-
"pattern": "^[^{}/ :\\\\]+(?::\\d+)?$"
146+
"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'.",
147+
"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})*$"
148148
},
149149
"deviceListHandling": {
150150
"title": "<b>Device List</b>",
@@ -220,6 +220,12 @@
220220
}
221221
}
222222
}
223+
},
224+
"enhancedSkip": {
225+
"title": "<b>For 'appletv-enhanced', enable skip</b>",
226+
"type": "boolean",
227+
"placeholder": false,
228+
"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."
223229
}
224230
}
225231
},
@@ -251,6 +257,7 @@
251257
"routines",
252258
"debug",
253259
"thermostatTurnOn",
260+
"enhancedSkip",
254261
"deviceListHandling",
255262
{
256263
"key": "deviceList",

lib/parse/Characteristic.js

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -312,10 +312,15 @@ function _getActions(description, context, devices) {
312312
Characteristic.RemoteKey.INFORMATION = 15;
313313
*/
314314
// "Play", "Pause", "Stop", "Next", "Previous"
315+
// console.log("Remote Key", context);
315316
cookie["Pause"] = messages.cookieV(11, context);
316317
cookie["Play"] = messages.cookieV(8, context);
317318
cookie["Stop"] = messages.cookieV(9, context);
318-
cookie["Next"] = messages.cookieV(7, context);
319+
if (context.options.enhancedSkip === true && context.info.Manufacturer === 'Apple Inc.') {
320+
cookie["Next"] = messages.cookieV(8, context);
321+
} else {
322+
cookie["Next"] = messages.cookieV(7, context);
323+
}
319324
cookie["Previous"] = messages.cookieV(6, context);
320325
break;
321326
default:

lib/parse/Homebridge.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,8 @@ function Homebridge(devices, context) {
2222
blind: context.blind,
2323
door: context.door,
2424
mergeServiceName: context.mergeServiceName,
25-
thermostatTurnOn: context.thermostatTurnOn
25+
thermostatTurnOn: context.thermostatTurnOn,
26+
enhancedSkip: context.enhancedSkip,
2627
};
2728
this.playback = {};
2829
devices.accessories.accessories.forEach(function (element) {

0 commit comments

Comments
 (0)