Seven descriptors written from their pages replace seven stubs. All are version 3; 1.5.2 announced Speaker, StepSpeaker, EqualizerController and PlaybackStateReporter as version 1, and all but ChannelController without a property. StepSpeaker has no properties object in discovery and PlaybackController one without fields, next to supportedOperations; a directive for an operation the device did not list is answered with INVALID_DIRECTIVE. The equalizer declares bands, modes or both under "configurations", a TV its inputs from the 61 names of the page. Not described: the lineup of ChannelController, whose discovery example the page folds away. The discovery examples of InputController spell one key "friendNames"; the fixtures have friendlyNames, as its table does. 62 examples of the six pages are saved as fixtures. 241 tests pass, 215 before. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
27 lines
1 KiB
JavaScript
27 lines
1 KiB
JavaScript
"use strict";
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
exports.StepSpeaker = void 0;
|
|
const schema_js_1 = require("../schema.js");
|
|
const types_js_1 = require("../types.js");
|
|
/**
|
|
* A speaker that is turned up and down by steps and does not know its volume. It reports nothing: the capability
|
|
* has no properties object in discovery.
|
|
*/
|
|
exports.StepSpeaker = (0, types_js_1.defineInterface)({
|
|
namespace: "Alexa.StepSpeaker",
|
|
version: "3",
|
|
doc: "https://developer.amazon.com/docs/alexaplus/device-apis/alexa-stepspeaker.html",
|
|
kind: "controller",
|
|
tier: 2,
|
|
instanced: false,
|
|
properties: {},
|
|
directives: {
|
|
AdjustVolume: {
|
|
name: "AdjustVolume",
|
|
payload: schema_js_1.s.object({ volumeSteps: schema_js_1.s.number({ min: -100, max: 100, integer: true }) }),
|
|
note: "above 0 louder, below 0 quieter",
|
|
},
|
|
SetMute: { name: "SetMute", payload: schema_js_1.s.object({ mute: schema_js_1.s.boolean() }) },
|
|
},
|
|
discovery: () => ({ properties: false }),
|
|
});
|