108 Commits

Author SHA1 Message Date
Simon Stürz
a39a38f993 added rules notifications 2019-04-01 20:48:17 +02:00
Simon Stürz
bb03280583 added device added/removed notification 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
f26ec0fa47 bump api version 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
79cbab42a1 fixed packRule 2019-04-01 20:48:17 +02:00
Simon Stürz
48b09ecf01 bump api version 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
Simon Stürz
c1a0895a3f added Uint and Color to base types 2019-04-01 20:48:17 +02:00
Simon Stürz
d4f94c8b8c bump API version 2019-04-01 20:48:17 +02:00
Simon Stürz
f331fe1591 added input types in plugin json files 2019-04-01 20:48:17 +02:00
Simon Stürz
a336077521 fixed reference to InputType in ParamType 2019-04-01 20:48:17 +02:00
Simon Stürz
d510157b26 added input type to API 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
66f4a361a1 add Events.GetEventType
Fixes #59
2019-04-01 20:48:17 +02:00
Michael Zanetti
63fb728269 bump version 2019-04-01 20:48:17 +02:00
Michael Zanetti
21f05315a6 fix typo 2019-04-01 20:48:17 +02:00
Michael Zanetti
213b28ea83 add Devices.GetStateValues
Fixes #65
2019-04-01 20:48:17 +02:00
Michael Zanetti
f75c7abde4 bump api version 2019-04-01 20:48:17 +02:00
Michael Zanetti
c57773883d return correct enum name
Fixes #68
2019-04-01 20:48:17 +02:00
Michael Zanetti
352a2dcca1 don't pack invalid/empty stateevaluator contents
Fixes #56
2019-04-01 20:48:17 +02:00
Michael Zanetti
477a95477b add operator to stateevaluator in json api
Fixes #57
2019-04-01 20:48:17 +02:00
Michael Zanetti
de6b60734e Decouple the json timeout from the actual error code.
Fixes #50
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
ba8e3d7ec9 fix some plugin's json 2019-04-01 20:48:17 +02:00
Michael Zanetti
b252ff9706 port new plugins to json system 2019-04-01 20:48:17 +02:00
Michael Zanetti
0614e79193 convert the remaining param lists 2019-04-01 20:48:17 +02:00
Michael Zanetti
824464e09b fix some param handling issues 2019-04-01 20:48:17 +02:00
Michael Zanetti
f32abc8a2e add support for allowedValues 2019-04-01 20:48:17 +02:00
Michael Zanetti
53fe5557e0 fix issues in param handling in json api 2019-04-01 20:48:17 +02:00
Michael Zanetti
e4f3c9aba1 fix parsing of params 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
da9c937f94 update discoveryParams from QVariantMap to QList<Param> too 2019-04-01 20:48:17 +02:00
Michael Zanetti
fcdf3e1e0b more work on the Hue plugin 2019-04-01 20:48:17 +02:00
Michael Zanetti
a6725ec4e9 add initial support for pairing devices (Only CreateMethodDiscovery and SetupMethodPushButton so far)
implement an initial Philips Hue plugin to test it
add a python script to test stuff
2019-04-01 20:47:51 +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
d2f02d650b fix eventdescriptor's paramdescriptors handling 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
21738b3907 state changes emit events now 2014-06-08 20:52:30 +02:00