-
Notifications
You must be signed in to change notification settings - Fork 1
Original TODO
-
panel variables are persisted by indigo; need to pick up those changes and push to python member variables in plugin object.
-
variables to hold most recent zone monitor data in case of trigger
-
how to send '*' keypress and other
-
variable for LCD line 1 and LCD line 2 for showing on control page
-
Add actions to arm — detect if quick-arm is set and don’t ask for pwasword if it is.
-
detect unknown messages and send to email or create event
-
Action to adjust keypad volume
-
Action to adjust speaker volume
-
Temp & timeAndDate
-
keyfob command: just process for logging
-
user lights, what is going on here? process for logging
-
process superbus device commands, if only for logging them
-
output data commands, for logging
-
user code commands, see what’s in there…
-
Detect '' in LCD output; expose to Indigo (but would this only tell us something we could find out from another query — e.g. if it’s * but that’s only because windows are open, then who cares; how to detect other issues on top of that?) AD2USB had bug with sending '', perhaps we have same big although different devices?
-
Email reporting of what’s open, closed; pick zones that can be open at night. — Just use indigo device groups?
-
Keep alive
-
TCP proxy that speaks 'Concord' (AD2USB ser2sock?)
-
Track time of last alarm event
-
comm loop: be greedy about reading data before sending any; think panel doesn’t want to deal with incoming messages while it is waiting for acks on outgoing
-
create new event - 'PROXY TROUBLE' that the proxy can send to the plugin!
-
fix panel info handling (get serial / rev numbers right)
-
flush input & output on opening
-
plugin doesn’t shutdown properly, indigo has to kill the thread?
-
properly handle comm error, e.g. serial port device goes away and tx/rx fails" put panel and devices in correct error state
-
thread safety for message handlers poking around in zone/partition data structures
-
when restarting plugin, close serial port if already open ????
-
Should partition have explicit alarm state?
-
need to stop message handler when panel object goes away — i.e. crashes when you deleted Panel device
X - split out the two lines for LCD display X - Create way to send synthetic events (e.g. alarms) into plugin for testing X - Handle alarm events. This includes cancels & restorals X - Can a zone/partition device change its config while active? (i.e. after startComm but before stopComm)? Answer: no, we can rely on start/StopComm X - Debug mode handling / log levels X - Fix zone text handling: spaces, backspace, sentence case X - Handle arming level and map to partitions. X - Handle multiple partitions X - Not sure about how to parameterize a new zone dev when we have no panel info; seems to come up with 'zeros' as zone/part id; what about if we edit a configuration for an existing zone dev? X - XXX use props or state to hold zone config info? If props, how to get zone/part visible to user. Answer: 'address' field. OK. So revamp how startComm/stopComm work… X - different sets of partition states between partition info cmd and arming cmd; try to handle in a useful manner X - fixup zone states: unknown, tripped, OK, problem X - Make zones a subset of onOff device or sensors? Will that make them work better in indigo touch? — fixed by using state names that indigo app interprets for state symbols X - better logging of keypad messages (moved the logging here to only happen in 'debug verbose' mode) - detect if it’s just time and date - detect if has star - what to do about missing partition stuff? X - Handle 'clear dynamic image' & automation event lost commands. What to with existing indigo devices? Set all states to 'unknown'? X - internal event/error log for easy replay/monitoring
Bigger: - Handle Advent alarms? - integrate with Honey? - generic alarm plugin?
Other alarm panels with plugins: - Cynical Honey - Caddx - AD2USB — also for Honeywell, like Cynical - DSC