AlarmServer icon indicating copy to clipboard operation
AlarmServer copied to clipboard

Smartthings - Where should I put it?

Open kholloway opened this issue 11 years ago • 7 comments

I'm going to be adding more functionality to the AlarmServer in the form of SSDP/UPNP stuff specifically for Smartthings but could be used for something else. Specifically this will make discovery of zones easy for a revamped DSC Smart App I'm working on which will completely remove the manual configuration I previously had to use. This will also include registered callbacks which the smart app can use to hook into each zones status without requiring any of the messy oAuth crap I have to currently use with Smartthings (the hub can be used to talk directly to the local LAN).

I'm hoping most of the new features won't require smartthings in any way but instead can be used by it or any other system using SSDP/UPNP and registered callbacks.

I'm guessing some of this will likely end up increasing the python module requirements which I know you were avoiding (I'm already using requests module in the current Smartthings branch).

Anyway my real question is should I keep adding this stuff to the Smartthings branch, the master branch or my own fork (IE don't add it at all to this repo)?

Thoughts/comments/whatever?

kholloway avatar May 22 '14 00:05 kholloway

Hi Kent,

Apologies for zero activity, seems life continues to get in the way of free time.

It would be nice to make it modular, in the sense that the core had its set of requirements, and then each component you loaded could register to some sort of core event system and in turn have its own requirements. It would be within the same app, just potentially dynamically load separate components based on configuration.

Things like email, sms, could also be a components/modules as well, registering the core event system to send notifications for certain events.

This is obviously very high level, any thoughts? I'm sure there is some sort of example/pre-written library out there that does something like this already.

juggie avatar May 22 '14 01:05 juggie

No worries at all, so that modular stuff sounds fantastic and honestly also sounds like a lot of work unless you have some fairly simple plugin/mod thing you were thinking of?

It's one thing to enable/disable something in the config file and another entirely to pull all that out and rework the whole thing as a pub/sub setup or plugin type setup.

I'm hoping you have some simple/fairly easy to implement idea in mind?

kholloway avatar May 22 '14 17:05 kholloway

I think you'd be safe to have it in the master branch, looks like there are others besides you and me that want it integrated.

gschrader avatar Jul 21 '14 19:07 gschrader

I can't test it (no smart things) but so long as it can be disabled/is optional feel free to commit it and we can go from there..

juggie avatar Jul 22 '14 00:07 juggie

@MattTW, the guy who has the HoneyAlarm server linked above, ported over his plugin system to a fork of the AlarmServer that he has.

He is waiting on me to test it so he can send a merge request for the whole thing. That way it will be fully configurable and not enabled by default.

kholloway avatar Jul 22 '14 02:07 kholloway

Sounds good. I am happy to see a few niche users of this! When you test it, go ahead and merge it.

juggie avatar Jul 22 '14 03:07 juggie

I'm actually going to wait for pull request #25 to be applied to master branch then I will refactor my stuff and @MattTW plugin stuff against that since it's a fair amount of changes.

kholloway avatar Jul 22 '14 03:07 kholloway