Commit Graph

569 Commits (4b890429fa70ed878b2c2583f0d1cae9b19c7318)

Author SHA1 Message Date
Michael Zanetti 293a3c7833 add a system interface 2019-04-08 13:55:15 +02:00
Jenkins 47b1bdd919 Automatic translations update by Jenkins 2019-04-08 13:55:15 +02:00
Michael Zanetti 156ff84888 some more improvements, while at it 2019-04-08 13:55:15 +02:00
Michael Zanetti 62976cd860 more precise param namings and translation context strings 2019-04-08 13:55:15 +02:00
Jenkins b0fa34f7d6 Automatic translations update by Jenkins 2019-04-08 13:55:15 +02:00
Jenkins 624bbd45e3 Automatic translations update by Jenkins 2019-04-08 13:55:15 +02:00
Simon Stürz e82efc7021 Add basic structure of first plugin tutorial and continue with docs 2019-04-08 13:55:15 +02:00
Michael Zanetti 6cf060aa93 fix an issue where state values in rules could be casted wrong from string to double 2019-04-08 13:55:15 +02:00
Jenkins ba69ab6a29 Automatic translations update by Jenkins 2019-04-08 13:55:15 +02:00
Michael Zanetti abd2305bc0 add support for paramTypes by name 2019-04-08 13:55:15 +02:00
Jenkins b31027f793 Automatic translations update by Jenkins 2019-04-08 13:55:15 +02:00
Jenkins 72dcc5cc98 Automatic translations update by Jenkins 2019-04-08 13:55:15 +02:00
Simon Stürz ac95880175 Update mock parent/child actions 2019-04-08 13:55:15 +02:00
Simon Stürz 2d349e28b1 Adjust mock plugins with new plugin info generation 2019-04-08 13:55:15 +02:00
Simon Stürz 023a223908 Improve plugin json parsing and fix generate-plugininfo script 2019-04-08 13:55:15 +02:00
Jenkins bb5826de87 Automatic translations update by Jenkins 2019-04-08 13:55:15 +02:00
Michael Zanetti 661a75a988 make use of parent mechanism in mock device 2019-04-08 13:55:15 +02:00
Jenkins d00e1fbac3 Automatic translations update by Jenkins 2019-04-08 13:55:15 +02:00
Michael Zanetti b8c11cc850 improve debug output for the ruleengine 2019-04-08 13:55:15 +02:00
Michael Zanetti 028abeafa2 generate a basic translation file if it's not here yet 2019-04-08 13:55:15 +02:00
Jenkins 1125d50e4a Automatic translations update by Jenkins 2019-04-08 13:55:15 +02:00
Michael Zanetti 4156e0abaa guru.guh.DevicePlugin -> io.nymea.DevicePlugin 2019-04-08 13:55:15 +02:00
Michael Zanetti 79cc563eb0 docs guh -> nymea 2019-04-08 13:55:15 +02:00
Michael Zanetti 5826532fc9 rename plugin output 2019-04-08 13:55:15 +02:00
Michael Zanetti b8a86b095d copyright headers guh -> nymea 2019-04-08 13:55:15 +02:00
Michael Zanetti 34e387fa2b guh-generateplugininfo -> nymea-generateplugininfo 2019-04-08 13:55:15 +02:00
Michael Zanetti 39fc071ed6 defines GUH_* -> NYMEA_* 2019-04-08 13:55:15 +02:00
Michael Zanetti eb316a7a0c libguh -> libnymea 2019-04-08 13:55:15 +02:00
Jenkins b3a368874d Automatic translations update by Jenkins 2019-04-08 13:55:15 +02:00
Michael Zanetti 58c83e9072 add support for interface based rules 2019-04-08 13:55:15 +02:00
Jenkins 57d4466f9a Automatic translations update by Jenkins 2019-04-08 13:55:15 +02:00
Michael Zanetti 562e7aa89d update how id names are generated
include the deviceClass/plugin name in all defines to avoid collisions
between deviceClasses within the same file. So far this hasn't
really been an issue because using idName we could set random ids.

Now interfaces dictate the names, so having multiple deviceClasses
in one file and both implementing the same interface would clash.

This also should improve readability in the plugins code as we won't
have ids like: "bridgeConnected" and "connected" available which
easily causes the developer to accidentally use "connected" where
instead "bridgeConnected" should be used (I actually found some
bugs like this while updating plugins for this). The new style
would force those states to be named like e.g. "bridgeConnected"
and "lightConnected" which are not as easy to mix up.
2019-04-08 13:55:15 +02:00
Michael Zanetti 62dac29d99 make testDevices work again 2019-04-08 13:55:15 +02:00
Michael Zanetti 30a2139369 update mock plugin 2019-04-08 13:55:15 +02:00
Michael Zanetti 880b6e1418 repurpose "name" property, add displayName* props instead 2019-04-08 13:55:15 +02:00
Jenkins 4caeb15207 Automatic translations update by Jenkins 2019-04-08 13:55:15 +02:00
Michael Zanetti 1167001b0b don't autmatically run translations compiler
instead add a manual "translations" target
2019-04-08 13:55:15 +02:00
Simon Stürz 2207ac317a Update copyright headers 2019-04-08 13:55:15 +02:00
Simon Stürz 044b7958ea Fix upnp discovery 2019-04-02 01:02:45 +02:00
Simon Stürz c2c7e0fbc2 First building version of hardware resource abstraction 2019-04-02 01:02:45 +02:00
Simon Stürz 19a4223906 First version of bluetooth manager 2019-04-02 01:02:45 +02:00
Simon Stürz 039619ccfd introduce hardwaremanager and remove BLUETOOTH_LE ifdef 2019-04-02 01:02:45 +02:00
Michael Zanetti 99aa833ce8 add pushbutton auth 2019-04-02 01:02:45 +02:00
Simon Stürz 39c7d9b0a1 Add update server name for avahi txt record 2019-04-02 01:02:45 +02:00
Simon Stürz a2b55cfc2f remove duplicated handshake method 2019-04-02 01:02:45 +02:00
Simon Stürz 1ae6864d6b revert index in order to prevent lots of conflicts 2019-04-02 01:02:45 +02:00
Simon Stürz 2d7070417f enable maxwarnings again 2019-04-02 01:02:45 +02:00
Simon Stürz 28cd05497f Handl states and calendaritem correctly 2019-04-02 01:02:45 +02:00
Simon Stürz 625109f550 Fix loadSaveTimeDescriptor test and improve debug output of rule engine 2019-04-02 01:02:45 +02:00
Simon Stürz 900f409485 add avahi colition handling 2019-04-02 01:02:45 +02:00
Simon Stürz 2781ae9288 add libguh-core coverage 2019-04-02 01:02:45 +02:00
Michael Zanetti daf8f4533f make the devicemanager save all the states (unless opted out in plugin.json) 2019-04-02 01:02:45 +02:00
Michael Zanetti ec5bedf774 add a test for deviceDisappeared 2019-04-02 01:02:45 +02:00
Simon Stürz 07e2b87665 prevent double shotdown 2019-04-02 01:02:45 +02:00
Michael Zanetti 314129a76f add a test to benchmark database performance 2019-04-02 01:02:45 +02:00
Simon Stürz ef4311df02 fix copyright 2019-04-02 01:02:45 +02:00
Michael Zanetti 2677ad0afd fix some more paths 2019-04-02 01:02:45 +02:00
Michael Zanetti 6122bbc706 fix linker path 2019-04-02 01:02:45 +02:00
Michael Zanetti 195fb2ba63 removed all plugins, except the mock one which is required for testing 2019-04-02 01:02:45 +02:00
Michael Zanetti 89d8d371f6 update plugins to use the interfaces 2019-04-02 01:02:45 +02:00
Michael Zanetti f223da3467 reenable all the device plugins 2019-04-02 01:02:45 +02:00
Michael Zanetti 4fc0ef01fa add a test 2019-04-02 01:02:45 +02:00
Michael Zanetti 45caf66851 initial work on interfaces
have some interfaces defined and in use by DeviceManager and the API.
this can be used to build first prototypes in apps using the interfaces
stuff. Currently the lights interfaces are mostly defined and fully
implemented by the Hue plugin.

TODO: more interfaces to be defined, make more plugins follow
interfaces.
TODO: tests for the interface code
TODO: docs for the interface code
2019-04-02 01:02:45 +02:00
Michael Zanetti 3577f37e1e fix some docs typos 2019-04-02 01:02:45 +02:00
Simon Stürz a34665eea4 Fix bluetooth error for older builds 2019-04-02 01:02:45 +02:00
Simon Stürz 7273e35adf fix prints 2019-04-02 01:02:45 +02:00
Simon Stürz 308aef672b fix print method 2019-04-02 01:02:45 +02:00
Simon Stürz b9053a31ae update plugin compiler 2019-04-02 01:02:45 +02:00
Simon Stürz 8d648b7eb8 start cleanup of multisensor plugin 2019-04-02 01:02:43 +02:00
Simon Stürz 2e4b02099b update license headers 2019-04-02 01:02:21 +02:00
Simon Stürz e05ef20c97 update copyright 2019-04-02 01:02:07 +02:00
Simon Stürz 9c8097919d update license header 2019-04-02 01:02:06 +02:00
Simon Stürz eb8cad0440 don't build mock plugin if testing is disabled 2019-04-02 01:01:32 +02:00
Simon Stürz 7cfd7bf293 fixed issue #410
fixed issue #405
2019-04-02 01:01:32 +02:00
Simon Stürz a64441bdf5 fix plugin path for snap 2019-04-02 01:01:32 +02:00
Simon Stürz 1ce508f665 add arch triplet to lib and plugins 2019-04-02 01:01:32 +02:00
Simon Stürz 51a4dda185 translations installation path 2019-04-02 01:01:32 +02:00
Simon Stürz 1f47d00c22 continue snappy packaging 2019-04-02 01:01:32 +02:00
Simon Stürz 613caa30e1 fix gpio button 2019-04-02 01:01:32 +02:00
Simon Stürz f9d9e7e494 fix gpio plugin 2019-04-02 01:01:32 +02:00
Simon Stürz bb3e38aba0 add beaglebone black gpios 2019-04-02 01:01:32 +02:00
Simon Stürz 24c48e8af3 Add gpio plugin with raspberry pi 2 support 2019-04-02 01:01:32 +02:00
Simon Stürz dd495719b1 fix hue plugin and improve network detector shutdown mechanism 2019-04-02 01:01:32 +02:00
Simon Stürz 7a4c0ab454 upgrade network detector plugin 2019-04-02 01:01:32 +02:00
Simon Stürz 642b5c8331 basic networkmanager functionality 2019-04-02 01:01:32 +02:00
Simon Stürz 661e0a5116 Fix broken hue plugin 2019-04-02 01:01:32 +02:00
Simon Stürz 6ebda18235 fix guhd translations 2019-04-02 01:01:32 +02:00
Simon Stürz b53186da19 translate plugins 2019-04-02 01:01:32 +02:00
Simon Stürz d77e122aca fixed documentation
finalized translation mechanism
2019-04-02 01:01:31 +02:00
Simon Stürz 978a203ec1 add translation strings for plugininfo 2019-04-02 01:01:21 +02:00
Simon Stürz 859c5b0df8 add paramTypesId and close #302 2019-04-02 01:01:21 +02:00
Simon Stürz a5fbc70fc2 fix all params in all plugins 2019-04-02 01:01:19 +02:00
Simon Stürz d3abd9bf9f add guh-translations package 2019-04-02 01:01:05 +02:00
Simon Stürz 1a74e9c1fe update translation install path 2019-04-02 01:01:05 +02:00
Simon Stürz 5a7a5d2112 add existing translation files and test debian packaging for translations 2019-04-02 01:01:05 +02:00
Simon Stürz 6060a260b3 create automatically translation folder 2019-04-02 01:01:05 +02:00
Simon Stürz a6dbf36d0f add translation files to all plugins 2019-04-02 01:01:04 +02:00
Simon Stürz 503939b559 update plugininfo compiler 2019-04-02 01:00:52 +02:00
Simon Stürz 48535e5c56 add build dependecy for translation tools
add translation path for packages
2019-04-02 01:00:52 +02:00
Simon Stürz 1e4e2ac09c add translations mechanism for plugins 2019-04-02 01:00:52 +02:00