Skip to content

Commit 49abb59

Browse files
committed
New features and bug fixes
### UPDATED - Plugin will now check if itself is outdated by comparing between "semver" versions and not through an equals comparison. - Sensor name minimum is now set to the length of "0" to accomodate for the new settings panel form. - Swapped the placements for ADT Sensor Zone and Type, where the sensor zone will now come first. - Authentication API will now properly check for an error message during login in the "getVerificationMethods()" method. ### FIXED - Potential issue with `isMaintenancePeriod()` where the end time may have also included the next day. ### ADDED - New settings panel (classic settings panel will continue to be accessible via the "Plugin" tab > "Classic View" button)
1 parent e9b4bab commit 49abb59

27 files changed

+2230
-246
lines changed

README.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -37,8 +37,8 @@ Here is an example of how the `config.json` file for this plugin should be confi
3737
{
3838
"name": "Family Room Couch Window 1",
3939
"adtName": "Family Room Window (99)",
40-
"adtType": "doorWindow",
41-
"adtZone": 99
40+
"adtZone": 99,
41+
"adtType": "doorWindow"
4242
}
4343
]
4444
},
@@ -136,12 +136,12 @@ All sensors are now organized within an array of objects, with each object conta
136136
- For display purposes (offers clarity in the event of an unforeseen reset).
137137
- __ADT Name__ (`adtName`)
138138
- Must match the name shown under the "Name" column in the "System" tab when logged into the portal.
139-
- __ADT Type__ (`adtType`)
140-
- Must match the type shown under the "Device Type" column in the "System" tab when logged into the portal.
141-
- For example, if the type is "Door/Window Sensor", the value should be `doorWindow`. Read the [Supported Devices](#supported-devices) section for more information.
142139
- __ADT Zone__ (`adtZone`)
143140
- Must match the zone shown under the "Zone" column in the "System" tab when logged into the portal.
144141
- For compatibility reasons, only devices with zones 1 through 99 are supported.
142+
- __ADT Type__ (`adtType`)
143+
- Must match the type shown under the "Device Type" column in the "System" tab when logged into the portal.
144+
- For example, if the type is "Door/Window Sensor", the value should be `doorWindow`. Read the [Supported Devices](#supported-devices) section for more information.
145145

146146
If you do not wish to add sensors, simply assign an empty array (e.g. `[]`). However, it is advisable to include all supported sensors, as having none does not optimize plugin performance.
147147

config.schema.json

Lines changed: 14 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -150,7 +150,7 @@
150150
"required": false,
151151
"description": "<strong class=\"font-weight-bold\">Optional.</strong> Provide a display name for this sensor to differentiate it from the names assigned by ADT technicians during installation.",
152152
"placeholder": "e.g. Family Room Couch Window 1",
153-
"minLength": 1,
153+
"minLength": 0,
154154
"maxLength": 50
155155
},
156156
"adtName": {
@@ -162,6 +162,15 @@
162162
"minLength": 1,
163163
"maxLength": 100
164164
},
165+
"adtZone": {
166+
"title": "ADT Sensor Zone",
167+
"type": "number",
168+
"required": true,
169+
"description": "Specify the <strong class=\"font-weight-bold\">exact zone</strong> associated with the sensor you want to add. Double-check the zone to ensure the correct sensor is added.",
170+
"placeholder": "e.g. 99",
171+
"minimum": 1,
172+
"maximum": 99
173+
},
165174
"adtType": {
166175
"title": "ADT Sensor Type",
167176
"type": "string",
@@ -223,15 +232,6 @@
223232
]
224233
}
225234
]
226-
},
227-
"adtZone": {
228-
"title": "ADT Sensor Zone",
229-
"type": "number",
230-
"required": true,
231-
"description": "Specify the <strong class=\"font-weight-bold\">exact zone</strong> associated with the sensor you want to add. Double-check the zone to ensure the correct sensor is added.",
232-
"placeholder": "e.g. 99",
233-
"minimum": 1,
234-
"maximum": 99
235235
}
236236
}
237237
},
@@ -301,10 +301,6 @@
301301
{
302302
"key": "fingerprint",
303303
"type": "password"
304-
},
305-
{
306-
"type": "help",
307-
"helpvalue": "<div class=\"alert alert-primary\" role=\"alert\">In a future update, you will be able to utilize an upgraded settings panel that allows you to see the details of your fingerprint. Fingerprints generated are randomized.</div>"
308304
}
309305
]
310306
},
@@ -328,13 +324,13 @@
328324
"key": "sensors[].adtName",
329325
"type": "text"
330326
},
331-
{
332-
"key": "sensors[].adtType",
333-
"type": "select"
334-
},
335327
{
336328
"key": "sensors[].adtZone",
337329
"type": "number"
330+
},
331+
{
332+
"key": "sensors[].adtType",
333+
"type": "select"
338334
}
339335
]
340336
}

package.json

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "homebridge-adt-pulse",
33
"displayName": "Homebridge ADT Pulse",
4-
"version": "3.3.5",
4+
"version": "3.4.0",
55
"description": "Homebridge security system platform for ADT Pulse",
66
"main": "./build/index.js",
77
"exports": "./build/index.js",
@@ -79,6 +79,7 @@
7979
"react": "18.3.1",
8080
"react-dom": "18.3.1",
8181
"react-hook-form": "7.52.1",
82+
"semver": "7.6.3",
8283
"serialize-error": "11.0.3",
8384
"tough-cookie": "4.1.4",
8485
"ua-parser-js": "2.0.0-beta.3",
@@ -91,6 +92,7 @@
9192
"@types/node": "20.14.11",
9293
"@types/react": "18.3.3",
9394
"@types/react-dom": "18.3.0",
95+
"@types/semver": "7.5.8",
9496
"@types/tough-cookie": "4.0.5",
9597
"@typescript-eslint/eslint-plugin": "7.17.0",
9698
"@typescript-eslint/parser": "7.17.0",

0 commit comments

Comments
 (0)