35 Commits

Author SHA1 Message Date
Simon Stürz
a39a38f993 added rules notifications 2019-04-01 20:48:17 +02:00
Simon Stürz
1c008d0bef fixed inline comments and added a test 2019-04-01 20:48:17 +02:00
Simon Stürz
f0d7fbd3f5 bump guh version and add a more specific rule error 2019-04-01 20:48:17 +02:00
Simon Stürz
90622e5edb improove RuleAction logic
add tests
fix documentation
2019-04-01 20:48:17 +02:00
Simon Stürz
a29b3a75eb add documentation 2019-04-01 20:48:17 +02:00
Simon Stürz
0603b8a3b7 fixed tests and bump api 2019-04-01 20:48:17 +02:00
Simon Stürz
6bd8983ec2 added RuleAction and RuleActionParam to RuleEngine 2019-04-01 20:48:17 +02:00
Simon Stürz
0652646240 added exitActions for state based rules 2019-04-01 20:48:17 +02:00
Simon Stürz
9e10d1a99d added name for rules 2019-04-01 20:48:17 +02:00
Michael Zanetti
240c5e36d6 implement a logging framework 2019-04-01 20:48:17 +02:00
Michael Zanetti
56ca42e1ca finish off the stateevaluator handling 2019-04-01 20:48:17 +02:00
Michael Zanetti
5cd3154b64 add possibility to disable/enable rules
Fixes #58
2019-04-01 20:48:17 +02:00
Michael Zanetti
aad334c799 switch json api to better type system and enhance error reporting 2019-04-01 20:48:17 +02:00
Michael Zanetti
1aba1643f8 first attempt to clean up type system 2019-04-01 20:48:17 +02:00
Michael Zanetti
be90f47f63 more work on rules
disallow removing a device if a rule still refers to it unless
parameters contain information on what to do with those rules.
2019-04-01 20:48:17 +02:00
Michael Zanetti
5f61ae03a7 make DeviceManager and RuleEngine in GuhCore private
This helps to have a cleaner separation between modules and have a
place to do inter-module checks before modifying data (e.g.
cascade deleting rules when a device is deleted etc)
2019-04-01 20:48:17 +02:00
Michael Zanetti
16645498db write more tests for the rules engine.
decouple jsonrpc versioning from application versioning
2019-04-01 20:47:51 +02:00
Michael Zanetti
9d21f32366 allow calling AddRule with a single eventDescriptor but also with a list 2019-04-01 20:47:51 +02:00
Michael Zanetti
373af5bde5 add tests for loading/storing rules to disk 2019-04-01 20:47:51 +02:00
Michael Zanetti
08223606ee introduce StateDescriptor and StateEvaluator for use with Rules 2014-06-09 04:34:37 +02:00
Michael Zanetti
7c4354a6e1 add api to do async action executions 2014-05-03 19:59:24 +02:00
Michael Zanetti
d4053297c8 add eventdescriptor and paramdescriptor classes to be used with Rules 2014-04-25 00:46:10 +02:00
Simon Stürz
2a372dd240 added google mail notification plugin
changed licence formating
2014-04-20 18:49:39 +02:00
Michael Zanetti
e312e36ab9 introduce ParamType and Param, to get more type safety and better possibilities for comparison in rules 2014-04-18 04:45:58 +02:00
Michael Zanetti
c56ebcb6a2 also implement async replies 2014-04-13 22:40:49 +02:00
Michael Zanetti
b85aa3072e fix rules again 2014-04-13 14:07:35 +02:00
Michael Zanetti
415a48d659 make things more typesafe 2014-04-05 23:37:55 +02:00
Michael Zanetti
044be78064 added methods to query states and properly test state changes on notifications 2014-04-04 22:50:59 +02:00
Simon Stürz
95f806ccaf added licence to source code 2014-03-31 21:55:33 +02:00
Simon Stürz
be4ee5c14d hive -> guh 2014-03-31 20:33:30 +02:00
Michael Zanetti
05537d7b6a Trigger -> Event 2014-01-26 18:39:09 +01:00
Michael Zanetti
4a4c3b9941 refactor json api declaration a bit 2014-01-25 04:39:22 +01:00
Michael Zanetti
52c2b3bfaf added api to remove rules 2014-01-25 02:52:08 +01:00
Michael Zanetti
0d69170cef complete rules in json api 2014-01-25 02:07:54 +01:00
Michael Zanetti
02c8e6e4b4 reworked jsonrpc server.
added introspection
all calls and responses have now param validation
2014-01-20 01:13:43 +01:00