You've got the right idea but if you follow through with it, using scripts and timers for each object, you will essentially duplicate DoorMinder's core features and not require the module!
Here's what I suggest: continue to use a single script (activated by the module's
PlayReminder property) and have it check the object's
name, instead of its type. Here's what I mean:
Code:
with Devices.CustomDevices.M1_Panel.Voice
select case this.Name
case "Kitchen_Door"
.Kitchen_Door.Play = true
case "Front_Door"
.Front_Door.Play = true
case "Garage_Door"
.Garage_Door.Play = true
case else
.Unknown_Object.Play = true
end select
end with
The "
case else" statement is a catch-all. If the "
select" statement doesn't find a match for the object's name, it'll play the "Unknown_Object" message (you'll need to create one, of course).
So if you have a Home object called "
PatioDoor", create an appropriate voice message called:
Devices.CustomDevices.M1_Panel.Voice.PatioDoor
and then add the following two lines before the "
case else" statement:
Code:
case "PatioDoor"
.PatioDoor.Play = true
FWIW, if all you want to do is know when someone has opened/closed a door, and you have an ELK M1, don't bother with the DoorMinder Module and simply use the M1 for annunciation.