diff --git a/accessories/LiftMaster.js b/accessories/LiftMaster.js index 8d15c38..8b6b33f 100644 --- a/accessories/LiftMaster.js +++ b/accessories/LiftMaster.js @@ -83,20 +83,61 @@ LiftMasterAccessory.prototype = { // parse and interpret the response var json = JSON.parse(body); var devices = json["Devices"]; + var foundDoors = []; // look through the array of devices for an opener for (var i=0; i 1) { + that.log("WARNING: You have multiple doors on your MyQ account."); + that.log("WARNING: Specify the ID of the door you want to control using the 'requiredDeviceId' property in your config.json file."); + that.log("WARNING: You can have multiple liftmaster accessories to cover your multiple doors"); + + for (var j = 0; j < foundDoors.length; j++) { + that.log("Found Door: " + foundDoors[j]); + } + + throw "FATAL: Please specify which specific door this Liftmaster accessory should control - you have multiples on your account"; + + } + + // Did we get a device ID? if (that.deviceId) { that.log("Found an opener with ID " + that.deviceId +". Ready to send command..."); that.setTargetState(); } + else + { + that.log("Error: Couldn't find a door device, or the ID you specified isn't associated with your account"); + } } else { that.log("Error '"+err+"' getting devices: " + body); diff --git a/config-sample.json b/config-sample.json index e8e4b96..768a1d1 100644 --- a/config-sample.json +++ b/config-sample.json @@ -48,6 +48,7 @@ "accessory": "LiftMaster", "name": "Garage Door", "description": "This shim supports LiftMaster garage door openers that are already internet-connected to the 'MyQ' service.", + // "requiredDeviceId", "", "username": "your-liftmaster-username", "password" : "your-liftmaster-password" },