From: Seann <nom...@ts...> - 2012-10-31 00:15:11
|
All, This is based off the GIT discussion, but I don't want to hijack a thread for my own idea. I have been toying with this idea for the LCD integration I have been working with, after building an embedded MH server, which is instead of having it be part of the main loop, to make it a module that talks VIA xAP, xPL, or some other communications bus protocol. My end goal is to split apart all of my MH code, into modules and core, with everything talking back to the core VIA a common communications bus, where the core application runs all the main loops, tasks, etc. Adding into that the ability to just disable a module if it isn't functional, instead of killing the main loop, like when a custom perl file has a typo in it, would be beneficial. My thoughts are having an Insteon module, an LCD module that uses LCDproc, a HAI Omnistat module that talks to the thermostat, and support for the existing xAP owfs, zoneminder, and asterisk. I am by no means a programmer, so my code might not be the best to start with, but I am willing to share what I come up with, as I deconstruct and reconstruct the setup to fit a modular bus setup. I also would guess this would move me off of a true vanilla MH, and only something purely my own. My main driver on this is yes, code updates from MH to my setup tends to break a lot more each update, since new features are streamed in, and I may not see them in release notes (are there release notes that are updated? I see none in the Insteon branch, but I am not surprised since it isn't complete) and the enabled by default features can be a pain, and a needless pain when it isn't something I am going to use. Example is the Android server stuff, which required an entry in the INI file to get MH to start, in order for me to find the exact module name to disable it. Regards, Seann |