488 Commits

Author SHA1 Message Date
Michael Zanetti
a11a219bbf Prevent multiple finish calls on API objects
Bad plugin implementations might call finish() more than once
which is not expected by receivers of the finished() signal and
may cause weird side effects.
2020-12-14 23:38:17 +01:00
Michael Zanetti
c31b99b04e Add a rudimentary mechanism for plugins to provide service data 2020-12-14 23:37:59 +01:00
Michael Zanetti
d999d1c715 Allow building the plugininfocompiler standalone
This is required to be able to build a "native" version of the pic
without having to build all the dependencies pulled in by the
HardwareManager.
2020-12-14 23:37:43 +01:00
Michael Zanetti
0cf7679341 revert newline change to avoid conflicts 2020-12-14 23:32:11 +01:00
Boernsman
2299a5eb27 added tag optional to account interfaces 2020-12-14 10:39:00 +01:00
Michael Zanetti
30f69e619b Add a UnitMilliSeconds 2020-12-11 17:30:58 +01:00
Michael Zanetti
12eef39013 Fix potential wrong state signal
Make sure to emit the very same value we store
2020-12-06 23:33:23 +01:00
Michael Zanetti
b9be92df2e Add state based value comparison in rules 2020-12-04 16:16:55 +01:00
Michael Zanetti
b1ede004b3 Improve parameter validation for interface actions and events 2020-11-28 14:51:28 +01:00
Simon Stürz
8749789322 Give plugins access to the coordinator IEEE address for unicast bindings 2020-11-25 13:05:27 +01:00
Michael Zanetti
a8453418cc Add paramValue() convenience functions to be in line with stateValue() api 2020-11-21 20:17:14 +01:00
Simon Stürz
2e6f68bc41 Fix typo in alert interface 2020-11-18 12:23:02 +01:00
Michael Zanetti
7ab98f65f7 Improve the plugin <-> node matching mechanism
* A ZigbeeNode can now only be claimed by 1 plugin.

* Unhandled nodes will now be re-evaluated on restart as there might
  have been new plugins installed which could handle this node now.
2020-11-16 15:15:28 +01:00
Simon Stürz
562e3235d8 Add nymea-zigbee as build dependency to libnymea 2020-11-16 10:51:31 +01:00
Simon Stürz
e9b5b618b2 Implement remove node into the resource and missing network state changed signal handling 2020-11-12 13:26:55 +01:00
Michael Zanetti
4b493ac51d provisoric handling for node removal 2020-11-12 11:27:31 +01:00
Michael Zanetti
b1173a3c35 Enable missing signal, fix lib exports 2020-11-07 00:24:54 +01:00
Michael Zanetti
af09702c31 first stab on the adding a plugin api 2020-11-06 19:22:19 +01:00
Simon Stürz
91d3ecbbf5 User NYMEA_LOGGING_CATEGORY for zigbee 2020-11-06 18:57:19 +01:00
Simon Stürz
203badf0c7 Improve zigbee api and add serial number 2020-11-06 18:36:22 +01:00
Simon Stürz
c3508acc23 Pass nodes into the zigbee resource and implement available for resource 2020-11-06 18:36:22 +01:00
Simon Stürz
19216b5f04 Add Zigbee settings and prepare network creation and loading 2020-11-06 18:36:21 +01:00
Simon Stürz
6e72689c56 Make use of nymea logging categories and offer libnymea-zigbee ZigbeeNetwork logging category within nymea to enable 2020-11-06 18:36:21 +01:00
Simon Stürz
915cd25a7d Update zigbee resource logging category 2020-11-06 18:35:50 +01:00
Simon Stürz
0f0b903af8 Clean up source and dependencies and make build against libnymea-zigbee 2020-11-06 18:35:50 +01:00
Simon Stürz
fb74df8f81 Start integrating zigbee into nymea 2020-11-06 18:34:54 +01:00
Michael Zanetti
d0935c8181 Add unit to batterylevel interface 2020-10-30 00:28:31 +01:00
Jenkins nymea
90291286df Merge PR #345: Don't use deprecated QString::sprintf and qVariantFromValue 2020-10-28 19:07:42 +01:00
Jenkins nymea
1f652ed78c Merge PR #342: Force full linking of plugins at build time 2020-10-28 19:07:40 +01:00
Jenkins nymea
c956988f32 Merge PR #341: Add an API keys provider plugin mechanism 2020-10-28 19:07:39 +01:00
Jenkins nymea
82c347c3a3 Merge PR #336: Add caching information to client API 2020-10-28 19:07:35 +01:00
Jenkins nymea
0f442abe43 Merge PR #335: Fix a potential crash in logging handlers 2020-10-28 19:07:34 +01:00
Jenkins nymea
618d1589f8 Merge PR #333: Allow states, events and actions in interfaces to be optional 2020-10-28 19:07:32 +01:00
Jenkins nymea
907bd3b646 Merge PR #332: Add update interface 2020-10-28 19:07:30 +01:00
Jenkins nymea
6bd094fd72 Merge PR #330: Make the signalStrength state in wirelessconnectable interface optional 2020-10-28 19:07:29 +01:00
Michael Zanetti
166b16689f Don't use deprecated QString::sprintf and qVariantFromValue 2020-10-26 15:59:38 +01:00
Michael Zanetti
dcae305625 Add an API keys provider plugin mechanism 2020-10-20 19:44:47 +02:00
Michael Zanetti
07b8515870 Force full linking of plugins at build time 2020-10-19 13:07:19 +02:00
Michael Zanetti
e50eece45c Fix metatype registering for old Qt versions 2020-10-15 22:34:06 +02:00
Michael Zanetti
d4889b5b78 Make it build with 0.23 2020-10-15 22:34:06 +02:00
Michael Zanetti
3296d4b417 more work 2020-10-15 22:34:06 +02:00
Michael Zanetti
0cbd1ff5ec Clenaup and polish types. 2020-10-15 22:34:06 +02:00
Michael Zanetti
a90841401c more work 2020-10-15 22:34:06 +02:00
Michael Zanetti
c7f957f201 some more python plugin work 2020-10-15 22:34:06 +02:00
Michael Zanetti
5d0751ae27 fix thread syncronisation 2020-10-15 22:34:06 +02:00
Michael Zanetti
3c47e59811 some more work 2020-10-15 22:34:06 +02:00
Michael Zanetti
125aee7153 Some more python plugin stuff 2020-10-15 22:34:06 +02:00
Michael Zanetti
31cf425b79 intermediate 2020-10-15 22:34:06 +02:00
Michael Zanetti
49bbd64434 Allow states, events and actions in interfaces to be optional 2020-09-20 23:32:15 +02:00
Michael Zanetti
f9cd2a99df Add caching information to client API
This allows JsonHandlers to set a hash for certain API calls.
Clients can use this information to load data for such a call
from a cache instead of calling the method over the network
just to get the same result as last time.
2020-09-15 13:53:19 +02:00