@kohost/api-client 3.0.0-beta.24 → 3.0.0-beta.25

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -185,9 +185,11 @@ var amqp = require("amqplib");
185
185
  var crypto = require("crypto");
186
186
  var isFatalError = require("amqplib/lib/connection").isFatalError;
187
187
  var debug = require("debug")("kohost:amqp-client");
188
- var HEADER_KEY_ORGANIZATION_ID = "organization-id";
189
- var HEADER_KEY_PROPERTY_ID = "property-id";
190
- var HEADER_KEY_DRIVER = "driver";
188
+ var HEADER_KEY_ORGANIZATION_ID = "X-Organization-Id";
189
+ var HEADER_KEY_PROPERTY_ID = "X-Property-Id";
190
+ var HEADER_KEY_DRIVER = "X-Driver";
191
+ var HEADER_KEY_COMMAND_NAME = "X-Command-Name";
192
+ var HEADER_KEY_EVENT_NAME = "X-Event-Name";
191
193
  var exchanges = {
192
194
  // routes commands based on `command-name` header and in many cases `property-id` header
193
195
  Commands: {
@@ -272,21 +274,19 @@ var KohostAMQPClient = class {
272
274
  debug("parseMessage input %o", message);
273
275
  let error = null;
274
276
  let data = {};
275
- let params = {};
276
277
  let query = {};
277
278
  let context = {};
278
279
  let headers = {};
279
280
  const isCommand = ((_a = message == null ? void 0 : message.properties) == null ? void 0 : _a.type) === "Command";
280
281
  const isEvent = ((_b = message == null ? void 0 : message.properties) == null ? void 0 : _b.type) === "Event";
281
282
  const messageHeaders = ((_c = message == null ? void 0 : message.properties) == null ? void 0 : _c.headers) || {};
282
- const commandName = messageHeaders["command-name"] || null;
283
- const eventName = messageHeaders["event-name"] || null;
283
+ const commandName = messageHeaders[HEADER_KEY_COMMAND_NAME] || null;
284
+ const eventName = messageHeaders[HEADER_KEY_EVENT_NAME] || null;
284
285
  if (message.content) {
285
286
  try {
286
287
  const payload = ((_d = message.properties) == null ? void 0 : _d.contentType) === "application/json" ? JSON.parse(message.content.toString()) : message.content.toString();
287
288
  data = (payload == null ? void 0 : payload.data) || {};
288
289
  error = payload == null ? void 0 : payload.error;
289
- params = (payload == null ? void 0 : payload.params) || {};
290
290
  query = (payload == null ? void 0 : payload.query) || {};
291
291
  context = (payload == null ? void 0 : payload.context) || {};
292
292
  } catch (error2) {
@@ -314,7 +314,6 @@ var KohostAMQPClient = class {
314
314
  if (error)
315
315
  parsed.error = this.parseError(error);
316
316
  parsed.data = data;
317
- parsed.params = params;
318
317
  parsed.query = query;
319
318
  parsed.context = context;
320
319
  parsed.headers = headers;
@@ -1907,17 +1907,12 @@ var require_mediaSource = __commonJS({
1907
1907
  title: "Media Source",
1908
1908
  description: "Any media source",
1909
1909
  type: "object",
1910
+ required: ["id", "type", "systemData", "audio", "video", "driver"],
1910
1911
  properties: {
1911
1912
  id: {
1912
1913
  $ref: "https://api.kohost.io/schemas/v3/definitions/device.json#/definitions/id"
1913
1914
  },
1914
1915
  type: {
1915
- $ref: "https://api.kohost.io/schemas/v3/definitions/device.json#/definitions/type"
1916
- },
1917
- driver: {
1918
- $ref: "https://api.kohost.io/schemas/v3/definitions/common.json#/definitions/driver"
1919
- },
1920
- subType: {
1921
1916
  type: "string",
1922
1917
  enum: [
1923
1918
  "tv",
@@ -1928,6 +1923,9 @@ var require_mediaSource = __commonJS({
1928
1923
  "uncontrolledDevice"
1929
1924
  ]
1930
1925
  },
1926
+ driver: {
1927
+ $ref: "https://api.kohost.io/schemas/v3/definitions/common.json#/definitions/driver"
1928
+ },
1931
1929
  audio: {
1932
1930
  type: "boolean"
1933
1931
  },
@@ -1940,6 +1938,27 @@ var require_mediaSource = __commonJS({
1940
1938
  volumeFeedback: {
1941
1939
  type: "boolean"
1942
1940
  },
1941
+ muted: {
1942
+ type: "boolean"
1943
+ },
1944
+ volume: {
1945
+ type: "number",
1946
+ minimum: 0,
1947
+ maximum: 100
1948
+ },
1949
+ power: {
1950
+ type: "string",
1951
+ enum: ["on", "off"]
1952
+ },
1953
+ input: {
1954
+ type: "string"
1955
+ },
1956
+ supportedInputs: {
1957
+ type: "array",
1958
+ items: {
1959
+ type: "string"
1960
+ }
1961
+ },
1943
1962
  command: {
1944
1963
  type: ["string", "null"],
1945
1964
  enum: [
@@ -1983,6 +2002,7 @@ var require_mediaSource = __commonJS({
1983
2002
  "input",
1984
2003
  "power",
1985
2004
  "enterChannel",
2005
+ "enterVolume",
1986
2006
  "number10",
1987
2007
  "number11",
1988
2008
  "number12",
@@ -2039,7 +2059,12 @@ var require_mediaSource = __commonJS({
2039
2059
  "hdmi2",
2040
2060
  "hdmi3",
2041
2061
  "cecDeviceList",
2042
- "mtsSap"
2062
+ "mtsSap",
2063
+ "red",
2064
+ "green",
2065
+ "yellow",
2066
+ "blue",
2067
+ "alert"
2043
2068
  ]
2044
2069
  },
2045
2070
  supportedNotifications: {
@@ -2049,11 +2074,10 @@ var require_mediaSource = __commonJS({
2049
2074
  $ref: "https://api.kohost.io/schemas/v3/definitions/device.json#/definitions/notification"
2050
2075
  },
2051
2076
  systemData: {
2052
- $ref: "https://api.kohost.io/schemas/v3/definitions/device.json#/definitions/systemData"
2077
+ $ref: "https://api.kohost.app/schemas/v3/definitions/device.json#/definitions/systemData"
2053
2078
  }
2054
2079
  },
2055
- additionalProperties: false,
2056
- required: ["id", "type", "systemData", "audio", "video", "driver"]
2080
+ additionalProperties: false
2057
2081
  };
2058
2082
  }
2059
2083
  });
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/Events/Event.js", "../../src/Events/SystemGatewayUpdatedEvent.js", "../../src/Events/SystemThermostatUpdatedEvent.js", "../../src/Events/SystemDimmerUpdatedEvent.js", "../../src/Events/SystemSwitchUpdatedEvent.js", "../../src/Events/SystemLockUpdatedEvent.js", "../../src/Events/SystemCameraUpdatedEvent.js", "../../src/Events/SystemSceneControllerUpdatedEvent.js", "../../src/Events/SystemWindowCoveringUpdatedEvent.js", "../../src/Events/SystemMediaSourceUpdatedEvent.js", "../../src/Events/SystemCourtesyUpdatedEvent.js", "../../src/Events/SystemMotionSensorUpdatedEvent.js", "../../src/Events/SystemUserUpdatedEvent.js", "../../src/Events/SystemSpaceUpdatedEvent.js", "../../src/Events/SystemSpaceTypeUpdatedEvent.js", "../../src/Events/SystemProductUpdatedEvent.js", "../../src/Events/SystemReservationUpdatedEvent.js", "../../src/Events/SMSSentEvent.js", "../../src/Events/EmailSentEvent.js", "../../src/Events/ShortLinkCreatedEvent.js", "../../src/Events/ApplicationInUseEvent.js", "../../src/Events/ApplicationOutOfUseEvent.js", "../../src/Events/index.js"],
4
- "sourcesContent": ["class Event {\n constructor(data, context) {\n this.data = [];\n this.context = {};\n if (!data) throw new Error(\"Event data is required\");\n if (typeof data !== \"object\" && !Array.isArray(data))\n throw new Error(\"Event data must be an object or array\");\n\n if (!Array.isArray(data)) this.data = [data];\n else this.data = data;\n\n this.data = this.data.map((d) => {\n if (d.eventData) {\n if (!d.eventData.timestamp) d.eventData.timestamp = new Date();\n if (!d.eventData.name) d.eventData.name = this.name;\n if (!d.eventData.type) d.eventData.type = this.type;\n }\n return d;\n });\n\n if (context) {\n for (const key in context) {\n this.context[key] = context[key];\n }\n }\n }\n\n get keyId() {\n if (Array.isArray(this.data)) return \"batch\";\n if (this.data.id) return this.data.id;\n return \"unknown\";\n }\n\n get name() {\n throw new Error(\"Event name is required\");\n }\n\n get type() {\n return \"Event\";\n }\n\n get routingKey() {\n return \"\";\n }\n\n get exchange() {\n return \"Events\";\n }\n\n build() {\n return { data: { ...this.data } };\n }\n}\n\nmodule.exports = Event;\n", "const Event = require(\"./Event\");\n\nclass SystemGatewayUpdatedEvent extends Event {\n constructor(space) {\n super(space);\n }\n\n get name() {\n return \"SystemGatewayUpdated\";\n }\n\n get routingKey() {\n return `gateway.${this.keyId}.updated`;\n }\n}\n\nmodule.exports = SystemGatewayUpdatedEvent;\n", "const Event = require(\"./Event\");\n\nclass SystemThermostatUpdatedEvent extends Event {\n constructor(thermostat) {\n super(thermostat);\n }\n\n get name() {\n return \"SystemThermostatUpdated\";\n }\n\n get routingKey() {\n return `thermostat.${this.keyId}.updated`;\n }\n}\n\nmodule.exports = SystemThermostatUpdatedEvent;\n", "const Event = require(\"./Event\");\n\nclass SystemDimmerUpdatedEvent extends Event {\n constructor(dimmer) {\n super(dimmer);\n }\n\n get name() {\n return \"SystemDimmerUpdated\";\n }\n\n get routingKey() {\n return `dimmer.${this.keyId}.updated`;\n }\n}\n\nmodule.exports = SystemDimmerUpdatedEvent;\n", "const Event = require(\"./Event\");\n\nclass SystemSwitchUpdatedEvent extends Event {\n constructor(_switch) {\n super(_switch);\n }\n\n get name() {\n return \"SystemSwitchUpdated\";\n }\n\n get routingKey() {\n return `switch.${this.keyId}.updated`;\n }\n}\n\nmodule.exports = SystemSwitchUpdatedEvent;\n", "const Event = require(\"./Event\");\n\nclass SystemLockUpdatedEvent extends Event {\n constructor(lock) {\n super(lock);\n }\n\n get name() {\n return \"SystemLockUpdated\";\n }\n\n get routingKey() {\n return `lock.${this.keyId}.updated`;\n }\n}\n\nmodule.exports = SystemLockUpdatedEvent;\n", "const Event = require(\"./Event\");\n\nclass SystemCameraUpdatedEvent extends Event {\n constructor(camera) {\n super(camera);\n }\n\n get name() {\n return \"SystemCameraUpdated\";\n }\n\n get routingKey() {\n return `camera.${this.keyId}.updated`;\n }\n}\n\nmodule.exports = SystemCameraUpdatedEvent;\n", "const Event = require(\"./Event\");\n\nclass SystemSceneControllerUpdatedEvent extends Event {\n constructor(sceneController) {\n super(sceneController);\n }\n\n get name() {\n return \"SystemSceneControllerUpdated\";\n }\n\n get routingKey() {\n return `sceneController.${this.keyId}.updated`;\n }\n}\n\nmodule.exports = SystemSceneControllerUpdatedEvent;\n", "const Event = require(\"./Event\");\n\nclass SystemWindowCoveringUpdatedEvent extends Event {\n constructor(wc) {\n super(wc);\n }\n\n get name() {\n return \"SystemWindowCoveringUpdated\";\n }\n\n get routingKey() {\n return `windowCovering.${this.keyId}.updated`;\n }\n}\n\nmodule.exports = SystemWindowCoveringUpdatedEvent;\n", "const Event = require(\"./Event\");\n\nclass SystemMediaSourceUpdatedEvent extends Event {\n constructor(mediaSource) {\n super(mediaSource);\n }\n\n get name() {\n return \"SystemMediaSourceUpdated\";\n }\n\n get routingKey() {\n return `mediaSource.${this.keyId}.updated`;\n }\n}\n\nmodule.exports = SystemMediaSourceUpdatedEvent;\n", "const Event = require(\"./Event\");\n\nclass SystemCourtesyUpdatedEvent extends Event {\n constructor(courtesy) {\n super(courtesy);\n }\n\n get name() {\n return \"SystemCourtesyUpdated\";\n }\n\n get routingKey() {\n return `courtesy.${this.keyId}.updated`;\n }\n}\n\nmodule.exports = SystemCourtesyUpdatedEvent;\n", "const Event = require(\"./Event\");\n\nclass SystemMotionSensorUpdatedEvent extends Event {\n constructor(mediaSource) {\n super(mediaSource);\n }\n\n get name() {\n return \"SystemMotionSensorUpdated\";\n }\n\n get routingKey() {\n return `mediaSource.${this.keyId}.updated`;\n }\n}\n\nmodule.exports = SystemMotionSensorUpdatedEvent;\n", "const Event = require(\"./Event\");\n\nclass SystemUserUpdatedEvent extends Event {\n constructor(user) {\n super(user);\n }\n\n get name() {\n return \"SystemUserUpdated\";\n }\n\n get routingKey() {\n return `user.${this.keyId}.updated`;\n }\n}\n\nmodule.exports = SystemUserUpdatedEvent;\n", "const Event = require(\"./Event\");\n\nclass SystemSpaceUpdatedEvent extends Event {\n constructor(space) {\n super(space);\n }\n\n get name() {\n return \"SystemSpaceUpdated\";\n }\n\n get routingKey() {\n return `space.${this.keyId}.updated`;\n }\n}\n\nmodule.exports = SystemSpaceUpdatedEvent;\n", "const Event = require(\"./Event\");\n\nclass SystemSpaceTypeUpdatedEvent extends Event {\n constructor(space) {\n super(space);\n }\n\n get name() {\n return \"SystemSpaceTypeUpdated\";\n }\n\n get routingKey() {\n\n return `spaceType.${this.keyId}.updated`; \n }\n}\n\nmodule.exports = SystemSpaceTypeUpdatedEvent; \n \n", "const Event = require(\"./Event\");\n\nclass SystemProductUpdatedEvent extends Event {\n constructor(product) {\n super(product);\n }\n\n get name() {\n return \"SystemProductUpdated\";\n }\n\n get routingKey() {\n return `product.${this.keyId}.updated`;\n }\n}\n\nmodule.exports = SystemProductUpdatedEvent;\n", "const Event = require(\"./Event\");\n\nclass SystemReservationUpdatedEvent extends Event {\n constructor(reservation) {\n super(reservation);\n }\n\n get name() {\n return \"SystemReservationUpdated\";\n }\n\n get routingKey() {\n return `reservation.${this.keyId}.updated`;\n }\n}\n\nmodule.exports = SystemReservationUpdatedEvent;\n", "const Event = require(\"./Event\");\n\nclass SMSSentEvent extends Event {\n constructor(email, context) {\n super(email, context);\n }\n\n get name() {\n return \"SMSSent\";\n }\n\n get routingKey() {\n return \"comm.sms.sent\";\n }\n}\n\nmodule.exports = SMSSentEvent;\n", "const Event = require(\"./Event\");\n\nclass EmailSentEvent extends Event {\n constructor(email, context) {\n super(email, context);\n }\n\n get name() {\n return \"EmailSent\";\n }\n\n get routingKey() {\n return \"comm.email.sent\";\n }\n}\n\nmodule.exports = EmailSentEvent;\n", "const Event = require(\"./Event\");\n\nclass ShortLinkCreatedEvent extends Event {\n constructor(shortLink, context) {\n super(shortLink, context);\n }\n\n get name() {\n return \"ShortLinkCreated\";\n }\n\n get routingKey() {\n return `shortlink.${this.keyId}.created`;\n }\n}\n\nmodule.exports = ShortLinkCreatedEvent;\n", "const Event = require(\"./Event\");\n\nclass ApplicationInUseEvent extends Event {\n constructor({ propertyId }) {\n super({ propertyId });\n }\n\n get name() {\n return \"ApplicationInUse\";\n }\n\n get routingKey() {\n return `app.${this.data[0].propertyId}.inUse`;\n }\n}\n\nmodule.exports = ApplicationInUseEvent;\n", "const Event = require(\"./Event\");\n\nclass ApplicationOutOfUseEvent extends Event {\n constructor({ propertyId }) {\n super({ propertyId });\n }\n\n get name() {\n return \"ApplicationOutOfUse\";\n }\n\n get routingKey() {\n return `app.${this.data[0].propertyId}.notInUse`;\n }\n}\n\nmodule.exports = ApplicationOutOfUseEvent;\n", "const SystemGatewayUpdatedEvent = require(\"./SystemGatewayUpdatedEvent\");\nconst SystemThermostatUpdatedEvent = require(\"./SystemThermostatUpdatedEvent\");\nconst SystemDimmerUpdatedEvent = require(\"./SystemDimmerUpdatedEvent\");\nconst SystemSwitchUpdatedEvent = require(\"./SystemSwitchUpdatedEvent\");\nconst SystemLockUpdatedEvent = require(\"./SystemLockUpdatedEvent\");\nconst SystemCameraUpdatedEvent = require(\"./SystemCameraUpdatedEvent\");\nconst SystemSceneControllerUpdatedEvent = require(\"./SystemSceneControllerUpdatedEvent\");\nconst SystemWindowCoveringUpdatedEvent = require(\"./SystemWindowCoveringUpdatedEvent\");\nconst SystemMediaSourceUpdatedEvent = require(\"./SystemMediaSourceUpdatedEvent\");\nconst SystemCourtesyUpdatedEvent = require(\"./SystemCourtesyUpdatedEvent\");\nconst SystemMotionSensorUpdatedEvent = require(\"./SystemMotionSensorUpdatedEvent\");\n\nconst SystemUserUpdatedEvent = require(\"./SystemUserUpdatedEvent\");\nconst SystemSpaceUpdatedEvent = require(\"./SystemSpaceUpdatedEvent\");\nconst SystemSpaceTypeUpdatedEvent = require(\"./SystemSpaceTypeUpdatedEvent\");\nconst SystemProductUpdatedEvent = require(\"./SystemProductUpdatedEvent\");\n\nconst SystemReservationUpdatedEvent = require(\"./SystemReservationUpdatedEvent\");\n\nconst SMSSentEvent = require(\"./SMSSentEvent\");\nconst EmailSentEvent = require(\"./EmailSentEvent\");\nconst ShortLinkCreatedEvent = require(\"./ShortLinkCreatedEvent\");\n\nconst ApplicationInUseEvent = require(\"./ApplicationInUseEvent\");\nconst ApplicationOutOfUseEvent = require(\"./ApplicationOutOfUseEvent\");\n\nmodule.exports = {\n SystemGatewayUpdatedEvent,\n SystemThermostatUpdatedEvent,\n SystemDimmerUpdatedEvent,\n SystemSwitchUpdatedEvent,\n SystemLockUpdatedEvent,\n SystemCameraUpdatedEvent,\n SystemSceneControllerUpdatedEvent,\n SystemWindowCoveringUpdatedEvent,\n SystemMediaSourceUpdatedEvent,\n SystemMotionSensorUpdatedEvent,\n SystemCourtesyUpdatedEvent,\n SystemUserUpdatedEvent,\n SystemSpaceUpdatedEvent,\n SystemSpaceTypeUpdatedEvent,\n SystemProductUpdatedEvent,\n SystemReservationUpdatedEvent,\n SMSSentEvent,\n EmailSentEvent,\n ShortLinkCreatedEvent,\n ApplicationInUseEvent,\n ApplicationOutOfUseEvent,\n};\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["class Event {\n constructor(data, context) {\n this.data = [];\n this.context = {};\n if (!data) throw new Error(\"Event data is required\");\n if (typeof data !== \"object\" && !Array.isArray(data))\n throw new Error(\"Event data must be an object or array\");\n\n if (!Array.isArray(data)) this.data = [data];\n else this.data = data;\n\n this.data = this.data.map((d) => {\n if (d.eventData) {\n if (!d.eventData.timestamp) d.eventData.timestamp = new Date();\n if (!d.eventData.name) d.eventData.name = this.name;\n if (!d.eventData.type) d.eventData.type = this.type;\n }\n return d;\n });\n\n if (context) {\n for (const key in context) {\n this.context[key] = context[key];\n }\n }\n }\n\n get keyId() {\n if (Array.isArray(this.data)) return \"batch\";\n if (this.data.id) return this.data.id;\n return \"unknown\";\n }\n\n get name() {\n throw new Error(\"Event name is required\");\n }\n\n get type() {\n return \"Event\";\n }\n\n get routingKey() {\n return \"\";\n }\n\n get exchange() {\n return \"Events\";\n }\n\n build() {\n return { data: { ...this.data } };\n }\n}\n\nmodule.exports = Event;\n", "const Event = require(\"./Event\");\n\nclass SystemGatewayUpdatedEvent extends Event {\n constructor(space) {\n super(space);\n }\n\n get name() {\n return \"SystemGatewayUpdated\";\n }\n\n get routingKey() {\n return `gateway.${this.keyId}.updated`;\n }\n}\n\nmodule.exports = SystemGatewayUpdatedEvent;\n", "const Event = require(\"./Event\");\n\nclass SystemThermostatUpdatedEvent extends Event {\n constructor(thermostat) {\n super(thermostat);\n }\n\n get name() {\n return \"SystemThermostatUpdated\";\n }\n\n get routingKey() {\n return `thermostat.${this.keyId}.updated`;\n }\n}\n\nmodule.exports = SystemThermostatUpdatedEvent;\n", "const Event = require(\"./Event\");\n\nclass SystemDimmerUpdatedEvent extends Event {\n constructor(dimmer) {\n super(dimmer);\n }\n\n get name() {\n return \"SystemDimmerUpdated\";\n }\n\n get routingKey() {\n return `dimmer.${this.keyId}.updated`;\n }\n}\n\nmodule.exports = SystemDimmerUpdatedEvent;\n", "const Event = require(\"./Event\");\n\nclass SystemSwitchUpdatedEvent extends Event {\n constructor(_switch) {\n super(_switch);\n }\n\n get name() {\n return \"SystemSwitchUpdated\";\n }\n\n get routingKey() {\n return `switch.${this.keyId}.updated`; \n }\n}\n\nmodule.exports = SystemSwitchUpdatedEvent;\n", "const Event = require(\"./Event\");\n\nclass SystemLockUpdatedEvent extends Event {\n constructor(lock) {\n super(lock);\n }\n\n get name() {\n return \"SystemLockUpdated\";\n }\n\n get routingKey() {\n return `lock.${this.keyId}.updated`;\n }\n}\n\nmodule.exports = SystemLockUpdatedEvent;\n", "const Event = require(\"./Event\");\n\nclass SystemCameraUpdatedEvent extends Event {\n constructor(camera) {\n super(camera);\n }\n\n get name() {\n return \"SystemCameraUpdated\";\n }\n\n get routingKey() {\n return `camera.${this.keyId}.updated`;\n }\n}\n\nmodule.exports = SystemCameraUpdatedEvent;\n", "const Event = require(\"./Event\");\n\nclass SystemSceneControllerUpdatedEvent extends Event {\n constructor(sceneController) {\n super(sceneController);\n }\n\n get name() {\n return \"SystemSceneControllerUpdated\";\n }\n\n get routingKey() {\n return `sceneController.${this.keyId}.updated`;\n }\n}\n\nmodule.exports = SystemSceneControllerUpdatedEvent;\n", "const Event = require(\"./Event\");\n\nclass SystemWindowCoveringUpdatedEvent extends Event {\n constructor(wc) {\n super(wc);\n }\n\n get name() {\n return \"SystemWindowCoveringUpdated\";\n }\n\n get routingKey() {\n return `windowCovering.${this.keyId}.updated`;\n }\n}\n\nmodule.exports = SystemWindowCoveringUpdatedEvent;\n", "const Event = require(\"./Event\");\n\nclass SystemMediaSourceUpdatedEvent extends Event {\n constructor(mediaSource) {\n super(mediaSource);\n }\n\n get name() {\n return \"SystemMediaSourceUpdated\";\n }\n\n get routingKey() {\n return `mediaSource.${this.keyId}.updated`;\n }\n}\n\nmodule.exports = SystemMediaSourceUpdatedEvent;\n", "const Event = require(\"./Event\");\n\nclass SystemCourtesyUpdatedEvent extends Event {\n constructor(courtesy) {\n super(courtesy);\n }\n\n get name() {\n return \"SystemCourtesyUpdated\";\n }\n\n get routingKey() {\n return `courtesy.${this.keyId}.updated`;\n }\n}\n\nmodule.exports = SystemCourtesyUpdatedEvent;\n", "const Event = require(\"./Event\");\n\nclass SystemMotionSensorUpdatedEvent extends Event {\n constructor(mediaSource) {\n super(mediaSource);\n }\n\n get name() {\n return \"SystemMotionSensorUpdated\";\n }\n\n get routingKey() {\n return `mediaSource.${this.keyId}.updated`;\n }\n}\n\nmodule.exports = SystemMotionSensorUpdatedEvent;\n", "const Event = require(\"./Event\");\n\nclass SystemUserUpdatedEvent extends Event {\n constructor(user) {\n super(user);\n }\n\n get name() {\n return \"SystemUserUpdated\";\n }\n\n get routingKey() {\n return `user.${this.keyId}.updated`;\n }\n}\n\nmodule.exports = SystemUserUpdatedEvent;\n", "const Event = require(\"./Event\");\n\nclass SystemSpaceUpdatedEvent extends Event {\n constructor(space) {\n super(space);\n }\n\n get name() {\n return \"SystemSpaceUpdated\";\n }\n\n get routingKey() {\n return `space.${this.keyId}.updated`;\n }\n}\n\nmodule.exports = SystemSpaceUpdatedEvent;\n", "const Event = require(\"./Event\");\n\nclass SystemSpaceTypeUpdatedEvent extends Event {\n constructor(space) {\n super(space);\n }\n\n get name() {\n return \"SystemSpaceTypeUpdated\";\n }\n\n get routingKey() {\n\n return `spaceType.${this.keyId}.updated`; \n }\n}\n\nmodule.exports = SystemSpaceTypeUpdatedEvent; \n \n", "const Event = require(\"./Event\");\n\nclass SystemProductUpdatedEvent extends Event {\n constructor(product) {\n super(product);\n }\n\n get name() {\n return \"SystemProductUpdated\";\n }\n\n get routingKey() {\n return `product.${this.keyId}.updated`;\n }\n}\n\nmodule.exports = SystemProductUpdatedEvent;\n", "const Event = require(\"./Event\");\n\nclass SystemReservationUpdatedEvent extends Event {\n constructor(reservation) {\n super(reservation);\n }\n\n get name() {\n return \"SystemReservationUpdated\";\n }\n\n get routingKey() {\n return `reservation.${this.keyId}.updated`;\n }\n}\n\nmodule.exports = SystemReservationUpdatedEvent;\n", "const Event = require(\"./Event\");\n\nclass SMSSentEvent extends Event {\n constructor(email, context) {\n super(email, context);\n }\n\n get name() {\n return \"SMSSent\";\n }\n\n get routingKey() {\n return \"comm.sms.sent\";\n }\n}\n\nmodule.exports = SMSSentEvent;\n", "const Event = require(\"./Event\");\n\nclass EmailSentEvent extends Event {\n constructor(email, context) {\n super(email, context);\n }\n\n get name() {\n return \"EmailSent\";\n }\n\n get routingKey() {\n return \"comm.email.sent\";\n }\n}\n\nmodule.exports = EmailSentEvent;\n", "const Event = require(\"./Event\");\n\nclass ShortLinkCreatedEvent extends Event {\n constructor(shortLink, context) {\n super(shortLink, context);\n }\n\n get name() {\n return \"ShortLinkCreated\";\n }\n\n get routingKey() {\n return `shortlink.${this.keyId}.created`;\n }\n}\n\nmodule.exports = ShortLinkCreatedEvent;\n", "const Event = require(\"./Event\");\n\nclass ApplicationInUseEvent extends Event {\n constructor({ propertyId }) {\n super({ propertyId });\n }\n\n get name() {\n return \"ApplicationInUse\";\n }\n\n get routingKey() {\n return `app.${this.data[0].propertyId}.inUse`;\n }\n}\n\nmodule.exports = ApplicationInUseEvent;\n", "const Event = require(\"./Event\");\n\nclass ApplicationOutOfUseEvent extends Event {\n constructor({ propertyId }) {\n super({ propertyId });\n }\n\n get name() {\n return \"ApplicationOutOfUse\";\n }\n\n get routingKey() {\n return `app.${this.data[0].propertyId}.notInUse`;\n }\n}\n\nmodule.exports = ApplicationOutOfUseEvent;\n", "const SystemGatewayUpdatedEvent = require(\"./SystemGatewayUpdatedEvent\");\nconst SystemThermostatUpdatedEvent = require(\"./SystemThermostatUpdatedEvent\");\nconst SystemDimmerUpdatedEvent = require(\"./SystemDimmerUpdatedEvent\");\nconst SystemSwitchUpdatedEvent = require(\"./SystemSwitchUpdatedEvent\");\nconst SystemLockUpdatedEvent = require(\"./SystemLockUpdatedEvent\");\nconst SystemCameraUpdatedEvent = require(\"./SystemCameraUpdatedEvent\");\nconst SystemSceneControllerUpdatedEvent = require(\"./SystemSceneControllerUpdatedEvent\");\nconst SystemWindowCoveringUpdatedEvent = require(\"./SystemWindowCoveringUpdatedEvent\");\nconst SystemMediaSourceUpdatedEvent = require(\"./SystemMediaSourceUpdatedEvent\");\nconst SystemCourtesyUpdatedEvent = require(\"./SystemCourtesyUpdatedEvent\");\n\nconst SystemMotionSensorUpdatedEvent = require(\"./SystemMotionSensorUpdatedEvent\");\n\nconst SystemUserUpdatedEvent = require(\"./SystemUserUpdatedEvent\");\nconst SystemSpaceUpdatedEvent = require(\"./SystemSpaceUpdatedEvent\");\nconst SystemSpaceTypeUpdatedEvent = require(\"./SystemSpaceTypeUpdatedEvent\");\nconst SystemProductUpdatedEvent = require(\"./SystemProductUpdatedEvent\");\n\nconst SystemReservationUpdatedEvent = require(\"./SystemReservationUpdatedEvent\");\n\nconst SMSSentEvent = require(\"./SMSSentEvent\");\nconst EmailSentEvent = require(\"./EmailSentEvent\");\nconst ShortLinkCreatedEvent = require(\"./ShortLinkCreatedEvent\");\n\nconst ApplicationInUseEvent = require(\"./ApplicationInUseEvent\");\nconst ApplicationOutOfUseEvent = require(\"./ApplicationOutOfUseEvent\");\n\nmodule.exports = {\n SystemGatewayUpdatedEvent,\n SystemThermostatUpdatedEvent,\n SystemDimmerUpdatedEvent,\n SystemSwitchUpdatedEvent,\n SystemLockUpdatedEvent,\n SystemCameraUpdatedEvent,\n SystemSceneControllerUpdatedEvent,\n SystemWindowCoveringUpdatedEvent,\n SystemMediaSourceUpdatedEvent,\n SystemMotionSensorUpdatedEvent,\n SystemCourtesyUpdatedEvent,\n SystemUserUpdatedEvent,\n SystemSpaceUpdatedEvent,\n SystemSpaceTypeUpdatedEvent,\n SystemProductUpdatedEvent,\n SystemReservationUpdatedEvent,\n SMSSentEvent,\n EmailSentEvent,\n ShortLinkCreatedEvent,\n ApplicationInUseEvent,\n ApplicationOutOfUseEvent,\n};\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -9383,17 +9383,12 @@ var require_mediaSource = __commonJS({
9383
9383
  title: "Media Source",
9384
9384
  description: "Any media source",
9385
9385
  type: "object",
9386
+ required: ["id", "type", "systemData", "audio", "video", "driver"],
9386
9387
  properties: {
9387
9388
  id: {
9388
9389
  $ref: "https://api.kohost.io/schemas/v3/definitions/device.json#/definitions/id"
9389
9390
  },
9390
9391
  type: {
9391
- $ref: "https://api.kohost.io/schemas/v3/definitions/device.json#/definitions/type"
9392
- },
9393
- driver: {
9394
- $ref: "https://api.kohost.io/schemas/v3/definitions/common.json#/definitions/driver"
9395
- },
9396
- subType: {
9397
9392
  type: "string",
9398
9393
  enum: [
9399
9394
  "tv",
@@ -9404,6 +9399,9 @@ var require_mediaSource = __commonJS({
9404
9399
  "uncontrolledDevice"
9405
9400
  ]
9406
9401
  },
9402
+ driver: {
9403
+ $ref: "https://api.kohost.io/schemas/v3/definitions/common.json#/definitions/driver"
9404
+ },
9407
9405
  audio: {
9408
9406
  type: "boolean"
9409
9407
  },
@@ -9416,6 +9414,27 @@ var require_mediaSource = __commonJS({
9416
9414
  volumeFeedback: {
9417
9415
  type: "boolean"
9418
9416
  },
9417
+ muted: {
9418
+ type: "boolean"
9419
+ },
9420
+ volume: {
9421
+ type: "number",
9422
+ minimum: 0,
9423
+ maximum: 100
9424
+ },
9425
+ power: {
9426
+ type: "string",
9427
+ enum: ["on", "off"]
9428
+ },
9429
+ input: {
9430
+ type: "string"
9431
+ },
9432
+ supportedInputs: {
9433
+ type: "array",
9434
+ items: {
9435
+ type: "string"
9436
+ }
9437
+ },
9419
9438
  command: {
9420
9439
  type: ["string", "null"],
9421
9440
  enum: [
@@ -9459,6 +9478,7 @@ var require_mediaSource = __commonJS({
9459
9478
  "input",
9460
9479
  "power",
9461
9480
  "enterChannel",
9481
+ "enterVolume",
9462
9482
  "number10",
9463
9483
  "number11",
9464
9484
  "number12",
@@ -9515,7 +9535,12 @@ var require_mediaSource = __commonJS({
9515
9535
  "hdmi2",
9516
9536
  "hdmi3",
9517
9537
  "cecDeviceList",
9518
- "mtsSap"
9538
+ "mtsSap",
9539
+ "red",
9540
+ "green",
9541
+ "yellow",
9542
+ "blue",
9543
+ "alert"
9519
9544
  ]
9520
9545
  },
9521
9546
  supportedNotifications: {
@@ -9525,11 +9550,10 @@ var require_mediaSource = __commonJS({
9525
9550
  $ref: "https://api.kohost.io/schemas/v3/definitions/device.json#/definitions/notification"
9526
9551
  },
9527
9552
  systemData: {
9528
- $ref: "https://api.kohost.io/schemas/v3/definitions/device.json#/definitions/systemData"
9553
+ $ref: "https://api.kohost.app/schemas/v3/definitions/device.json#/definitions/systemData"
9529
9554
  }
9530
9555
  },
9531
- additionalProperties: false,
9532
- required: ["id", "type", "systemData", "audio", "video", "driver"]
9556
+ additionalProperties: false
9533
9557
  };
9534
9558
  }
9535
9559
  });