homebridge-ratgdo 0.1.0 → 1.0.0

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.
@@ -1 +1 @@
1
- {"version":3,"file":"ratgdo-device.js","sourceRoot":"","sources":["../src/ratgdo-device.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ratgdo-device.js","sourceRoot":"","sources":["../src/ratgdo-device.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ /// <reference types="node" />
2
+ import { RatgdoAccessory } from "./ratgdo-device.js";
3
+ import { RatgdoPlatform } from "./ratgdo-platform.js";
4
+ export declare class RatgdoMqtt {
5
+ private config;
6
+ private isConnected;
7
+ private log;
8
+ private mqtt;
9
+ private platform;
10
+ private subscriptions;
11
+ constructor(platform: RatgdoPlatform);
12
+ private configure;
13
+ publish(ratgdoAccessory: RatgdoAccessory, topic: string, message: string): void;
14
+ subscribe(ratgdoAccessory: RatgdoAccessory, topic: string, callback: (cbBuffer: Buffer) => void): void;
15
+ subscribeGet(ratgdoAccessory: RatgdoAccessory, topic: string, type: string, getValue: () => string): void;
16
+ subscribeSet(ratgdoAccessory: RatgdoAccessory, topic: string, type: string, setValue: (value: string) => void): void;
17
+ unsubscribe(ratgdoAccessory: RatgdoAccessory, topic: string): void;
18
+ private expandTopic;
19
+ }
@@ -0,0 +1,155 @@
1
+ /* Copyright(C) 2017-2024, HJD (https://github.com/hjdhjd). All rights reserved.
2
+ *
3
+ * ratgdo-mqtt.ts: MQTT connectivity class for Ratgdo.
4
+ */
5
+ import mqtt from "mqtt";
6
+ import { RATGDO_MQTT_RECONNECT_INTERVAL } from "./settings.js";
7
+ export class RatgdoMqtt {
8
+ config;
9
+ isConnected;
10
+ log;
11
+ mqtt;
12
+ platform;
13
+ subscriptions;
14
+ constructor(platform) {
15
+ this.config = platform.config;
16
+ this.isConnected = false;
17
+ this.log = platform.log;
18
+ this.mqtt = null;
19
+ this.platform = platform;
20
+ this.subscriptions = {};
21
+ if (!this.config.mqttUrl) {
22
+ return;
23
+ }
24
+ this.configure();
25
+ }
26
+ // Connect to the MQTT broker.
27
+ configure() {
28
+ // Try to connect to the MQTT broker and make sure we catch any URL errors.
29
+ try {
30
+ this.mqtt = mqtt.connect(this.config.mqttUrl, { reconnectPeriod: RATGDO_MQTT_RECONNECT_INTERVAL * 1000, rejectUnauthorized: false });
31
+ }
32
+ catch (error) {
33
+ if (error instanceof Error) {
34
+ switch (error.message) {
35
+ case "Missing protocol":
36
+ this.log.error("MQTT Broker: Invalid URL provided: %s.", this.config.mqttUrl);
37
+ break;
38
+ default:
39
+ this.log.error("MQTT Broker: Error: %s.", error.message);
40
+ break;
41
+ }
42
+ }
43
+ }
44
+ // We've been unable to even attempt to connect. It's likely we have a configuration issue - we're done here.
45
+ if (!this.mqtt) {
46
+ return;
47
+ }
48
+ // Notify the user when we connect to the broker.
49
+ this.mqtt.on("connect", () => {
50
+ this.isConnected = true;
51
+ // Magic incantation to redact passwords.
52
+ const redact = /^(?<pre>.*:\/{0,2}.*:)(?<pass>.*)(?<post>@.*)/;
53
+ this.log.info("Connected to MQTT broker: %s (topic: %s).", this.config.mqttUrl.replace(redact, "$<pre>REDACTED$<post>"), this.config.mqttTopic);
54
+ });
55
+ // Notify the user when we've disconnected.
56
+ this.mqtt.on("close", () => {
57
+ if (this.isConnected) {
58
+ this.isConnected = false;
59
+ // Magic incantation to redact passwords.
60
+ const redact = /^(?<pre>.*:\/{0,2}.*:)(?<pass>.*)(?<post>@.*)/;
61
+ this.log.info("Disconnected from MQTT broker: %s.", this.config.mqttUrl.replace(redact, "$<pre>REDACTED$<post>"));
62
+ }
63
+ });
64
+ // Process inbound messages and pass it to the right message handler.
65
+ this.mqtt.on("message", (topic, message) => {
66
+ if (this.subscriptions[topic]) {
67
+ this.subscriptions[topic](message);
68
+ }
69
+ });
70
+ // Notify the user when there's a connectivity error.
71
+ this.mqtt.on("error", (error) => {
72
+ switch (error.code) {
73
+ case "ECONNREFUSED":
74
+ this.log.error("MQTT Broker: Connection refused (url: %s). Will retry again in %s minute%s.", this.config.mqttUrl, RATGDO_MQTT_RECONNECT_INTERVAL / 60, RATGDO_MQTT_RECONNECT_INTERVAL / 60 > 1 ? "s" : "");
75
+ break;
76
+ case "ECONNRESET":
77
+ this.log.error("MQTT Broker: Connection reset (url: %s). Will retry again in %s minute%s.", this.config.mqttUrl, RATGDO_MQTT_RECONNECT_INTERVAL / 60, RATGDO_MQTT_RECONNECT_INTERVAL / 60 > 1 ? "s" : "");
78
+ break;
79
+ case "ENOTFOUND":
80
+ this.mqtt?.end(true);
81
+ this.log.error("MQTT Broker: Hostname or IP address not found. (url: %s).", this.config.mqttUrl);
82
+ break;
83
+ default:
84
+ this.log.error("MQTT Broker: %s (url: %s). Will retry again in %s minute%s.", error, this.config.mqttUrl, RATGDO_MQTT_RECONNECT_INTERVAL / 60, RATGDO_MQTT_RECONNECT_INTERVAL / 60 > 1 ? "s" : "");
85
+ break;
86
+ }
87
+ });
88
+ }
89
+ // Publish an MQTT event to a broker.
90
+ publish(ratgdoAccessory, topic, message) {
91
+ const expandedTopic = this.expandTopic(ratgdoAccessory.device.mac, topic);
92
+ // No valid topic returned, we're done.
93
+ if (!expandedTopic) {
94
+ return;
95
+ }
96
+ ratgdoAccessory.log.debug("MQTT publish: %s Message: %s.", expandedTopic, message);
97
+ // By default, we publish as: ratgdo/mac/event/name
98
+ this.mqtt?.publish(expandedTopic, message);
99
+ }
100
+ // Subscribe to an MQTT topic.
101
+ subscribe(ratgdoAccessory, topic, callback) {
102
+ const expandedTopic = this.expandTopic(ratgdoAccessory.device.mac, topic);
103
+ // No valid topic returned, we're done.
104
+ if (!expandedTopic) {
105
+ return;
106
+ }
107
+ ratgdoAccessory.log.debug("MQTT subscribe: %s.", expandedTopic);
108
+ // Add to our callback list.
109
+ this.subscriptions[expandedTopic] = callback;
110
+ // Tell MQTT we're subscribing to this event. By default, we subscribe as: ratgdo/mac/event/name.
111
+ this.mqtt?.subscribe(expandedTopic);
112
+ }
113
+ // Subscribe to a specific MQTT topic and publish a value on a get request.
114
+ subscribeGet(ratgdoAccessory, topic, type, getValue) {
115
+ // Return the current status of a given sensor.
116
+ this.platform.mqtt?.subscribe(ratgdoAccessory, topic + "/get", (message) => {
117
+ const value = message.toString().toLowerCase();
118
+ // Only publish if we receive a true value.
119
+ if (value !== "true") {
120
+ return;
121
+ }
122
+ // Publish our value and inform the user.
123
+ this.platform.mqtt?.publish(ratgdoAccessory, topic, getValue());
124
+ ratgdoAccessory.log.info("MQTT: %s status published.", type);
125
+ });
126
+ }
127
+ // Subscribe to a specific MQTT topic and set a value on a set request.
128
+ subscribeSet(ratgdoAccessory, topic, type, setValue) {
129
+ // Return the current status of a given sensor.
130
+ this.platform.mqtt?.subscribe(ratgdoAccessory, topic + "/set", (message) => {
131
+ const value = message.toString().toLowerCase();
132
+ // Set our value and inform the user.
133
+ setValue(value);
134
+ ratgdoAccessory.log.info("MQTT: set message received for %s: %s.", type, value);
135
+ });
136
+ }
137
+ // Unsubscribe to an MQTT topic.
138
+ unsubscribe(ratgdoAccessory, topic) {
139
+ const expandedTopic = this.expandTopic(ratgdoAccessory.device.mac, topic);
140
+ // No valid topic returned, we're done.
141
+ if (!expandedTopic) {
142
+ return;
143
+ }
144
+ delete this.subscriptions[expandedTopic];
145
+ }
146
+ // Expand a topic to a unique, fully formed one.
147
+ expandTopic(mac, topic) {
148
+ // No accessory, we're done.
149
+ if (!mac) {
150
+ return null;
151
+ }
152
+ return this.config.mqttTopic + "/" + mac + "/" + topic;
153
+ }
154
+ }
155
+ //# sourceMappingURL=ratgdo-mqtt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ratgdo-mqtt.js","sourceRoot":"","sources":["../src/ratgdo-mqtt.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ import { RatgdoDevice } from "./ratgdo-types.js";
2
+ export interface RatgdoOptions {
3
+ debug: boolean;
4
+ mqttTopic: string;
5
+ mqttUrl: string;
6
+ options: string[];
7
+ port: number;
8
+ }
9
+ export declare const featureOptionCategories: {
10
+ description: string;
11
+ name: string;
12
+ validFor: string[];
13
+ }[];
14
+ export declare const featureOptions: {
15
+ [index: string]: FeatureOption[];
16
+ };
17
+ export interface FeatureOption {
18
+ default: boolean;
19
+ defaultValue?: number;
20
+ description: string;
21
+ group?: string;
22
+ name: string;
23
+ }
24
+ export declare function isOptionEnabled(configOptions: string[], device: RatgdoDevice | null, option?: string, defaultReturnValue?: boolean): boolean;
25
+ export declare function getOptionValue(configOptions: string[], device: RatgdoDevice | null, option: string): string | undefined;
26
+ export declare function getOptionFloat(optionValue: string | undefined): number | undefined;
27
+ export declare function getOptionNumber(optionValue: string | undefined): number | undefined;
@@ -1,34 +1,43 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getOptionNumber = exports.getOptionFloat = exports.getOptionValue = exports.isOptionEnabled = exports.featureOptions = exports.featureOptionCategories = void 0;
4
- /* Copyright(C) 2017-2023, HJD (https://github.com/hjdhjd). All rights reserved.
1
+ /* Copyright(C) 2017-2024, HJD (https://github.com/hjdhjd). All rights reserved.
5
2
  *
6
3
  * ratgdo-options.ts: Feature option and type definitions for Ratgdo.
7
4
  */
8
- const settings_js_1 = require("./settings.js");
5
+ import { RATGDO_OCCUPANCY_DURATION } from "./settings.js";
9
6
  // Feature option categories.
10
- exports.featureOptionCategories = [
7
+ export const featureOptionCategories = [
11
8
  { description: "Device feature options.", name: "Device", validFor: ["all"] },
12
- { description: "Opener feature options.", name: "Opener", validFor: ["opener"] }
9
+ { description: "Opener feature options.", name: "Opener", validFor: ["opener"] },
10
+ { description: "Opener light feature options.", name: "Light", validFor: ["opener"] },
11
+ { description: "Opener motion feature options.", name: "Motion", validFor: ["opener"] }
13
12
  ];
14
- /* eslint-disable max-len */
13
+ /* eslint-disable @stylistic/max-len */
15
14
  // Individual feature options, broken out by category.
16
- exports.featureOptions = {
15
+ export const featureOptions = {
17
16
  // Device options.
18
17
  "Device": [
19
18
  { default: true, description: "Make this device available in HomeKit.", name: "" },
20
- { default: false, description: "Synchronize the Ratgdo name of this device with HomeKit. Synchronization is one-way only, syncing the device name from Ratgdo to HomeKit.", name: "SyncNames" }
19
+ { default: false, description: "Synchronize the Ratgdo name of this device with HomeKit. Synchronization is one-way only, syncing the device name from Ratgdo to HomeKit.", name: "SyncName" }
20
+ ],
21
+ // Light options.
22
+ "Light": [
23
+ { default: true, description: "Make the light on the opener available in HomeKit.", name: "" }
24
+ ],
25
+ // Motion options.
26
+ "Motion": [
27
+ { default: true, description: "Make the motion sensor on the opener available in HomeKit.", name: "" },
28
+ { default: false, description: "Add an occupancy sensor accessory using motion sensor activity to determine occupancy.", name: "OccupancySensor" },
29
+ { default: false, defaultValue: RATGDO_OCCUPANCY_DURATION, description: "Duration, in seconds, to wait without receiving a motion event to determine when occupancy is no longer detected.", group: "OccupancySensor", name: "OccupancySensor.Duration" }
21
30
  ],
22
31
  // Opener options.
23
32
  "Opener": [
24
33
  { default: false, description: "Make this opener read-only by ignoring open and close requests from HomeKit.", name: "ReadOnly" },
25
34
  { default: false, description: "Add a switch accessory to control the opener. This can be useful in automation scenarios where you want to work around HomeKit's security restrictions for controlling garage door openers.", name: "Switch" },
26
35
  { default: false, description: "Add an occupancy sensor accessory using the open state of the opener to determine occupancy. This can be useful in automation scenarios where you want to trigger an action based on the opener being open for an extended period of time.", name: "OccupancySensor" },
27
- { default: false, defaultValue: settings_js_1.RATGDO_OCCUPANCY_DURATION, description: "Duration, in seconds, to wait once the opener has reached the open state before indicating occupancy.", group: "OccupancySensor", name: "OccupancySensor.Duration" }
36
+ { default: false, defaultValue: RATGDO_OCCUPANCY_DURATION, description: "Duration, in seconds, to wait once the opener has reached the open state before indicating occupancy.", group: "OccupancySensor", name: "OccupancySensor.Duration" }
28
37
  ]
29
38
  };
30
39
  // Utility function to let us know whether a feature option should be enabled or not, traversing the scope hierarchy.
31
- function isOptionEnabled(configOptions, device, option = "", defaultReturnValue = true) {
40
+ export function isOptionEnabled(configOptions, device, option = "", defaultReturnValue = true) {
32
41
  // Nothing configured - we assume the default return value.
33
42
  if (!configOptions.length) {
34
43
  return defaultReturnValue;
@@ -46,7 +55,7 @@ function isOptionEnabled(configOptions, device, option = "", defaultReturnValue
46
55
  return undefined;
47
56
  };
48
57
  // Check to see if we have a device-level option first.
49
- if (device === null || device === void 0 ? void 0 : device.mac) {
58
+ if (device?.mac) {
50
59
  const value = isOptionSet(option, device.mac);
51
60
  if (value !== undefined) {
52
61
  return value;
@@ -60,9 +69,8 @@ function isOptionEnabled(configOptions, device, option = "", defaultReturnValue
60
69
  // The option hasn't been set at any scope, return our default value.
61
70
  return defaultReturnValue;
62
71
  }
63
- exports.isOptionEnabled = isOptionEnabled;
64
72
  // Utility function to return a value-based feature option for a Ratgdo device.
65
- function getOptionValue(configOptions, device, option) {
73
+ export function getOptionValue(configOptions, device, option) {
66
74
  // Nothing configured - we assume there's nothing.
67
75
  if (!configOptions.length || !option) {
68
76
  return undefined;
@@ -80,7 +88,7 @@ function getOptionValue(configOptions, device, option) {
80
88
  return undefined;
81
89
  };
82
90
  // Check to see if we have a device-level value first.
83
- if (device === null || device === void 0 ? void 0 : device.mac) {
91
+ if (device?.mac) {
84
92
  const value = getValue(option, device.mac);
85
93
  if (value) {
86
94
  return value;
@@ -89,7 +97,6 @@ function getOptionValue(configOptions, device, option) {
89
97
  // Finally, we check for a global-level value.
90
98
  return getValue(option);
91
99
  }
92
- exports.getOptionValue = getOptionValue;
93
100
  // Utility function to parse and return a numeric configuration parameter.
94
101
  function parseOptionNumeric(optionValue, convert) {
95
102
  // We don't have the option configured -- we're done.
@@ -106,17 +113,15 @@ function parseOptionNumeric(optionValue, convert) {
106
113
  return convertedValue;
107
114
  }
108
115
  // Utility function to return a floating point configuration parameter.
109
- function getOptionFloat(optionValue) {
116
+ export function getOptionFloat(optionValue) {
110
117
  return parseOptionNumeric(optionValue, (value) => {
111
118
  return parseFloat(value);
112
119
  });
113
120
  }
114
- exports.getOptionFloat = getOptionFloat;
115
121
  // Utility function to return an integer configuration parameter on a device.
116
- function getOptionNumber(optionValue) {
122
+ export function getOptionNumber(optionValue) {
117
123
  return parseOptionNumeric(optionValue, (value) => {
118
124
  return parseInt(value);
119
125
  });
120
126
  }
121
- exports.getOptionNumber = getOptionNumber;
122
127
  //# sourceMappingURL=ratgdo-options.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ratgdo-options.js","sourceRoot":"","sources":["../src/ratgdo-options.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ratgdo-options.js","sourceRoot":"","sources":["../src/ratgdo-options.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ import { API, DynamicPlatformPlugin, HAP, Logging, PlatformAccessory, PlatformConfig } from "homebridge";
2
+ import { RatgdoOptions } from "./ratgdo-options.js";
3
+ import Aedes from "aedes";
4
+ import { RatgdoAccessory } from "./ratgdo-device.js";
5
+ import { RatgdoMqtt } from "./ratgdo-mqtt.js";
6
+ export declare class RatgdoPlatform implements DynamicPlatformPlugin {
7
+ private readonly accessories;
8
+ readonly api: API;
9
+ broker: Aedes;
10
+ private deviceMac;
11
+ private featureOptionDefaults;
12
+ config: RatgdoOptions;
13
+ readonly configOptions: string[];
14
+ readonly configuredDevices: {
15
+ [index: string]: RatgdoAccessory;
16
+ };
17
+ readonly hap: HAP;
18
+ readonly log: Logging;
19
+ readonly mqtt: RatgdoMqtt | null;
20
+ private server;
21
+ private unsupportedDevices;
22
+ constructor(log: Logging, config: PlatformConfig, api: API);
23
+ configureAccessory(accessory: PlatformAccessory): void;
24
+ private configureBroker;
25
+ private configureGdo;
26
+ featureOptionDefault(option: string): boolean;
27
+ debug(message: string, ...parameters: unknown[]): void;
28
+ }