Michael Zanetti
daf8f4533f
make the devicemanager save all the states (unless opted out in plugin.json)
2019-04-02 01:02:45 +02:00
Simon Stürz
6a9759eb62
egg mod
2019-04-02 01:02:45 +02:00
Simon Stürz
8fbaded63a
prevent remaining in shutdown loop
2019-04-02 01:02:45 +02:00
Simon Stürz
436ccaa2f5
Place easteregg
2019-04-02 01:02:45 +02:00
Simon Stürz
e4fa93b679
Prevent guh from shutdown twice
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
4b3518661f
make libguh-core a proper lib
2019-04-02 01:02:45 +02:00
Michael Zanetti
69bf56af09
fix packet fragmentation on TCP layer
2019-04-02 01:02:45 +02:00
Michael Zanetti
cb4908dc92
prefer ssl connections rather than plaintext ones in upnp discovery response
2019-04-02 01:02:45 +02:00
Michael Zanetti
651e0bd3d8
fix mixup in upnp discovery response
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
Michael Zanetti
d800f6cf4f
try to fix broken databases (by rotating the old file and starting a new one)
2019-04-02 01:02:45 +02:00
Michael Zanetti
c40a9eaa45
don't cache settings... use the settings file directly
2019-04-02 01:02:45 +02:00
Michael Zanetti
b3ea0d1a1b
add debug print
2019-04-02 01:02:45 +02:00
Michael Zanetti
1451ba9a46
fix crash if a JsonReply times out but we still get a result afterwards
2019-04-02 01:02:45 +02:00
Michael Zanetti
d74f208a30
fix broadcast of UPnP information
...
also fixes a Unexpected null receiver warning which might happen now
because of the timing of various deleteLater() calls on disconnect
2019-04-02 01:02:45 +02:00
Michael Zanetti
c605bf15fe
fix compilation with Qt <= 5.4 (Debian jessie still has that)
2019-04-02 01:02:45 +02:00
Michael Zanetti
ec5da8db07
Enable notifications by default if an interface doesn't require authentication
2019-04-02 01:02:45 +02:00
Michael Zanetti
f68d47c5a8
fix typo
2019-04-02 01:02:45 +02:00
Michael Zanetti
759942b037
fix config initialisation when there's an old config around
2019-04-02 01:02:45 +02:00
Michael Zanetti
b1136ba2a4
fix upnp discovery request
2019-04-02 01:02:45 +02:00
Michael Zanetti
25c50d4c8a
print canonical path instead of plain one
2019-04-02 01:02:45 +02:00
Michael Zanetti
6a34ad46c8
fix file path verification in webserver
2019-04-02 01:02:45 +02:00
Michael Zanetti
a8b3cc30ca
drop #ifdef SNAPPY from guhconfig... we'll prepare configs in the packaging step now
2019-04-02 01:02:45 +02:00
Michael Zanetti
7977144b64
fix missing entry in introspect
2019-04-02 01:02:45 +02:00
Michael Zanetti
ec7c515745
drop some debug prints
2019-04-02 01:02:45 +02:00
Michael Zanetti
44dd07950b
added ability to configure each server interface individually
2019-04-02 01:02:45 +02:00
Michael Zanetti
63ffc163ba
make auth config work
2019-04-02 01:02:45 +02:00
Michael Zanetti
a4658332ff
configs can now hold multiple settings per transport type
2019-04-02 01:02:45 +02:00
Michael Zanetti
807c2bc385
move certificategerneator to a separate file
2019-04-02 01:02:45 +02:00
Michael Zanetti
232193cbfc
enable ssl on plain TCP socket too
2019-04-02 01:02:45 +02:00
Michael Zanetti
82c0e0bca6
randomize certificate serial number
2019-04-02 01:02:45 +02:00
Michael Zanetti
cd22106cdc
tweak certificate generation so tha Chomium can deal with it too
2019-04-02 01:02:45 +02:00
Michael Zanetti
424150dc8a
hook up global ssl config with webserver
2019-04-02 01:02:45 +02:00
Michael Zanetti
66870dccfe
add support for auto generated self-signed certificates for SSL encryption
2019-04-02 01:02:45 +02:00
Michael Zanetti
2b4972de52
move also transports into servermanager so we can share ssl config etc
...
This makes WebSocketServer pick up the global SSL configuration from
ServerManager.
2019-04-02 01:02:45 +02:00
Michael Zanetti
39e1807f94
add methods to revoke existing tokens
2019-04-02 01:02:45 +02:00
Michael Zanetti
3ce92d6bc9
use TimeManager instead of plain QDateTime
2019-04-02 01:02:45 +02:00
Michael Zanetti
a9ec17220a
fix issues from review
2019-04-02 01:02:45 +02:00
Michael Zanetti
53cca56fd3
add methods to revoke existing tokens again
2019-04-02 01:02:45 +02:00
Michael Zanetti
08727a07ba
Added API authentication
2019-04-02 01:02:45 +02:00
Michael Zanetti
6a4a481f88
remove old cloud handler, cleanup more jsonrpc stuff from TransportInterface
2019-04-02 01:02:45 +02:00
Michael Zanetti
f75a0e7a31
move jsonrpc logic out of transport interface into where it belongs, jsonrpcserver
2019-04-02 01:02:45 +02:00
Michael Zanetti
fcc6ee45fe
make it build with -Werror=implicit-fallthrough
2019-04-02 01:02:45 +02:00
Michael Zanetti
452f7fb209
fix the rule evaluation the first time it is called after a startup.
...
cought by more restrictive compiler warning settings
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
ce123f9352
emit a notification when a plugin config is changed
...
fixes #418
2019-04-02 01:02:45 +02:00
Michael Zanetti
e3c57c226b
fix tests
2019-04-02 01:02:45 +02:00
Michael Zanetti
f45e093cf1
don't access TimeManager at this point...
...
besides, we want the given timestamp anyways
2019-04-02 01:02:45 +02:00
Michael Zanetti
414d25c870
fix time events for rules
...
old code would compare QTime == QTime() every second which might not trigger
if e.g. milliseconds don't match. New code checks the interval between the
last check and the current one.
2019-04-02 01:02:45 +02:00