Commit Graph

948 Commits

Author SHA1 Message Date
François Picot
85d1016dff [BUGFIX] fix python38 compilation (#647) 2019-12-08 13:18:11 +01:00
LordGrey
ce7c99d2cd Stop LedDevice:write for disabled devices + Nanoleaf Fixes (#629)
* Handle Exceptions in main & Pythoninit

* Have SSDPDiscover generic again

* Have SSDPDiscover generic again

* Change Info- to Debug logs as technical service messages

* Nanoleaf - When switched on, ensure UDP mode

* Include SQL Database in Cross-Compile instructions

* Fix Clazy (QT code checker) and clang Warnings

* Stop LedDevice:write for disabled device

* Nanoleaf: Fix uint printfs

* NanoLeaf: Fix indents to tabs

* NanoLeaf - Add debug verbosity switches

* Device switchability support, FileDevice with timestamp support

* Nanoleaf Light Panels now support External Control V2

* Enhance LedDeviceFile by Timestamp + fix readyness

* Stop color stream, if LedDevice disabled

* Nanoleaf - remove switchability
2019-12-08 13:12:01 +01:00
brindosch
5e559627be
Feat: Add Admin API (#617)
* Push progress

TODO: rework RESET, probably to main.cpp again

* resetPassword rework

* enable administration restriction

* add short cmd for userdata

* Js apis

* Refactor JsonCB class

* Add userToken Auth

* Feat: Close connection if ext clients when def pw is set

* Feat: Protect db against pw/token tests

* WebUi PW Support (#9)

* Initial WebUi Password Support

* Small changes

* Initial WebUi Password Support

* Small changes

* Basic WebUi Token support

* added "removeStorage", added uiLock, updated login page

* Small improvments

* Small change

* Fix: prevent downgrade of authorization

* Add translation for localAdminAuth

* Feat: Show always save button in led layout

* Revert "Feat: Show always save button in led layout"

This reverts commit caad1dfcde.

* Feat: Password change link in notification

* Fix: body padding modal overlap

* Feat: Add instance index to response on switch

* prevent schema error

Signed-off-by: Paulchen-Panther <Paulchen-Panter@protonmail.com>

* Feat: add pw save

* Feat: callout settings/pw replaced with notification
2019-09-17 21:33:46 +02:00
Tobias Tangemann
04c3bc8cc9 Add PWM channel option for ws281x device in web interface (#623) 2019-09-16 13:55:47 +02:00
LordGrey
b459b8723e Update SSDPDiscover, Nanoleaf Device & CrossCompile Instructions (#616)
* Handle Exceptions in main & Pythoninit

* Have SSDPDiscover generic again

* Have SSDPDiscover generic again

* Change Info- to Debug logs as technical service messages

* Nanoleaf - When switched on, ensure UDP mode

* Include SQL Database in Cross-Compile instructions

* Fix Clazy (QT code checker) and clang Warnings
2019-09-14 22:54:41 +02:00
brindosch
145f88d5af
Bugfixes [ColorOrder apply, hue wizard, ledDevice display] (#621)
* Resolve general colorOrder update issue

* Fix: wizard.js syntax broken

* Fix: Remove active device prop and migrate to config data

* Fixing instanceStop Bug on WebUi (#10)

* Fixing instanceStop Bug on WebUi

* Added removeStorage

* Changes to deletion logic

* Improvements to deletion check

* Feat: Show always save btn & rm generate btn
2019-09-07 01:17:26 +02:00
Paulchen Panther
c94bcd8911
Merge pull request #615 from Paulchen-Panther/forwarder
Changed proto title in forwarder to flatbuffer
2019-08-31 07:33:59 +02:00
Paulchen Panther
782d44b81b
[Bugfix] V4L2 used screen resolution for fallback
https://hyperion-project.org/threads/ng-hyperion-v4l2-capture-resolution-issue.3684/#post-15959
2019-08-28 22:20:49 +02:00
brindosch
b1fa085d64
Breaking Change: ledLayout, ledColorsStream (#614)
* Remove clone & index in ledConfig

* Additional index correction

* Rename ledsConfig maximum and minimum in max and min

* Rename ledsConfig hscan and vscan with h and v

* Optimize ledColorsStream

* tiny correction
2019-08-25 16:32:19 +02:00
Paulchen Panther
24495bbc65 Fix #604, #605 ... (#607)
* Fix #604 and #605

Signed-off-by: Paulchen-Panther <Paulchen-Panter@protonmail.com>

* clear current prio on color command

Signed-off-by: Paulchen-Panther <Paulchen-Panter@protonmail.com>

* Fix QTimer threading issues

* Call QTimer start() stop() from QEvent

Signed-off-by: Paulchen-Panther <Paulchen-Panter@protonmail.com>

* send initial color/image to WebUI
hide error message when opening webbrowser

Signed-off-by: Paulchen-Panther <Paulchen-Panter@protonmail.com>

* added streaming timer to update WebUI Preview

Signed-off-by: Paulchen-Panther <Paulchen-Panter@protonmail.com>

* remove QMetaObject::invokeMethod()

Signed-off-by: Paulchen-Panther <Paulchen-Panter@protonmail.com>

* added parent to streaming timers

Signed-off-by: Paulchen-Panther <Paulchen-Panter@protonmail.com>

* header cleanup
2019-08-24 22:53:30 +02:00
Paulchen-Panther
8f27c2b1f6
changed proto title in forwarder to flatbuffer
Signed-off-by: Paulchen-Panther <Paulchen-Panter@protonmail.com>
2019-08-24 21:12:53 +02:00
b1rdhous3
18d6345968 WebUi: New Internet API logic, correct switch to last instance after refresh, current instance notification (#608)
* Added new restricted ip api checkbox, initial instance localStorage support

* Added instance notification, added correct instance switch after page refresh (to last current instance)

* Optimize intention in wizard.js

* ":" from i18n json to code

* Changes for Responsive about site
2019-08-21 17:46:49 +02:00
Paulchen Panther
1093278d16
Merge pull request #606 from Paulchen-Panther/v4l2
V4L2 Grabber fixes
2019-08-21 17:45:29 +02:00
brindosch
09ee8f26ee
Feat: Add image sender to webui + Browser screen capture (#611)
* Feat: Add image sender to webui

This PR adds a new image sending feature to the webui and extends the api accordingly. In javascript the processing of images is horrible slow (without WASM), so the solution is at the API side with out-of-the-box power of Qt.

- The image cmd accepts now a raw image that is encoded with base64. Supported are all image formats that qt supports (enough)
- There is no real size limit. It will be automatically scaled down to max 2000px width or height according to aspect ratio
- It's possible to scale down through a new "scale" property if developer wants that.
- Test were successfull until 3MP pictues, 4k+ closes the websocket on browser side, so 2k is a decent value
- Adds a new image streaming feature from browser (tabs/applications/complete desktop as target). This works just if used with HTTPS PR#612 AND with a recent version of Firefox/Chrome
2019-08-21 16:10:35 +02:00
brindosch
8e5f3251b5
Feat: Add SSL support for webserver + websocket (#612)
* Feat: Add SSL support for webserver + websocket

Finally, Hyperion reaches the SSL century!
- Uses by default a internal key and certificate to provide working HTTPS out-of-the-box
- Your browser won't like that, for a green ssl seal next to the browser address bar you need to use Let's Encrypt with a own legit domain. This is out of the scope of Hyperion
2019-08-21 16:09:28 +02:00
Andreas Ganske
fe12b36fce Make origin in schema-image optional (#610)
* Make origin in schema-image optional

... like in `color` and `effect` schemes.

* use origin if available
2019-08-19 20:25:16 +02:00
Paulchen Panther
beb9454a1f
Merge pull request #598 from Portisch/destructor
fix warning: throw will always call terminate
2019-08-18 20:02:31 +02:00
brindosch
d3f45e7ae5
Feat: SSDP discovery for hyperion-remote (#602)
* Auto stash before merge of "log" and "hyperion-project/master"

* resolve merge tool mess
2019-08-17 09:44:57 +02:00
Paulchen-Panther
0bb51d7e9c
V4L2 Grabber fixes
Signed-off-by: Paulchen-Panther <Paulchen-Panter@protonmail.com>
2019-08-16 20:05:30 +02:00
LordGrey
c4d0edd9c2 Handle Exceptions in main & Pythoninit (#601) 2019-08-15 23:49:32 +02:00
brindosch
9d84cdea0c
Fix: SSDP Server spec adjust (#599)
* Fix: SSDP Server spec adjust
- Fix: Windows 7 network overview no longer removes the Hyperion entry
- Fix: The general section should be marked as global
2019-08-14 21:19:05 +02:00
Portisch
f03d72be79 fix warning: throw will always call terminate 2019-08-14 12:45:01 +02:00
Paulchen-Panther
034f821d46
Multiple log messages are now summarised
Signed-off-by: Paulchen-Panther <Paulchen-Panter@protonmail.com>
2019-08-13 20:41:01 +02:00
Paulchen-Panther
a8a6113517
If the priority range of a proto / flatbuffer connection is not in the valid range (100 - 199) we will send an error message to the client as well as in the console output
Signed-off-by: Paulchen-Panther <Paulchen-Panter@protonmail.com>
2019-08-12 19:06:11 +02:00
Paulchen Panther
0f839f670e
Merge pull request #593 from maximkulkin/fix-rpi-pwm
[Hotfix] Fix RPI WS281x LED device initialization
2019-08-12 16:50:27 +02:00
Maxim Kulkin
9f9f133f16 Fix RPI WS281x LED device initialization 2019-08-12 00:35:22 -07:00
Paulchen Panther
c62ea87ab7
Merge pull request #578 from Paulchen-Panther/api_auth
Token Management, Database, ...
2019-08-11 23:25:06 +02:00
Paulchen Panther
af2646ea48
Merge pull request #580 from Lord-Grey/master
Allow to switch on LED device, if currently disabled
2019-08-11 19:02:22 +02:00
Paulchen-Panther
3dee474356
Instance names can now be renamed on the WebUI (incl. inst 0)
Signed-off-by: Paulchen-Panther <Paulchen-Panter@protonmail.com>
2019-08-04 20:19:33 +02:00
b1rdhous3
a080c7151d Moved Token Management to Network Setting
* Moved Token Management to Network Settings

* Fixed alignment of Token Settings Div if Help Tables are switched off

* Added Chars counter, new format of the div panel (footer), change i18n

* Added Explanation for Token Management

* Moved Token Management to Network Settings

* Fixed alignment of Token Settings Div if Help Tables are switched off

* Added Chars counter, new format of the div panel (footer), change i18n

* Added Explanation for Token Management

* i18n Fix

* Revert "i18n Fix"

This reverts commit 0186290689d8b140310d5376617a3d43429bb632.

* i18n Fix
2019-08-04 16:16:39 +02:00
Paulchen-Panther
05a4f53fa2
EffectModule::getEffect() is now a preprocessor directive
Signed-off-by: Paulchen-Panther <Paulchen-Panter@protonmail.com>
2019-08-03 19:14:52 +02:00
Paulchen Panther
0f96fdaa61
[Hotfix] The modified priority was not registered 2019-08-03 19:14:52 +02:00
Paulchen-Panther
cacfbada7a
The WebUI remote page has been rearranged
Set interuption flag to running effects when hyperion emits finished signal
Protobuffer, Flatbuffer and Boblight connection priority check to avoid unwanted program behavior

Signed-off-by: Paulchen-Panther <Paulchen-Panter@protonmail.com>
2019-08-03 19:14:52 +02:00
Paulchen-Panther
2e8014bdbb
Conditions with priority 255 removed in Boblight
Signal/Slot connection finished/deleteLater removed between HyperionDeamon/HyperionIManager

Signed-off-by: Paulchen-Panther <Paulchen-Panter@protonmail.com>
2019-08-03 19:14:52 +02:00
Paulchen-Panther
ce2f0a17d5
Proto- and Flatbuffer now share their input to all instances
Signed-off-by: Paulchen-Panther <Paulchen-Panter@protonmail.com>
2019-08-03 19:14:52 +02:00
brindosch
21206af916
Fix: PriorityMuxer prioritiesUpdate emit 2019-08-03 19:14:52 +02:00
Paulchen-Panther
871540a81b
Signal Hyperion::finished emits quit slot
Signed-off-by: Paulchen-Panther <Paulchen-Panter@protonmail.com>
2019-08-03 19:14:52 +02:00
Paulchen-Panther
a4811b7e3c
UDP listener removed because this class is not multi-instance capable. For a new implementation, image data is needed instead of led colors.
Signed-off-by: Paulchen-Panther <Paulchen-Panter@protonmail.com>
2019-08-03 19:14:52 +02:00
Paulchen-Panther
a3b326a18d
trigger muxer on color changes
Signed-off-by: Paulchen-Panther <Paulchen-Panter@protonmail.com>
2019-08-03 19:14:52 +02:00
Paulchen-Panther
96d79cdef6
The slot in the websocket client will now run through until there are no more data in the buffer
Signed-off-by: Paulchen-Panther <Paulchen-Panter@protonmail.com>
2019-08-03 19:14:52 +02:00
Paulchen-Panther
370e1b5f45
Compilation error fixed
Signed-off-by: Paulchen-Panther <Paulchen-Panter@protonmail.com>
2019-08-03 19:14:52 +02:00
Paulchen-Panther
f7707bb2d0
Append led array to JsonAPI ServerInfo
Signed-off-by: Paulchen-Panther <Paulchen-Panter@protonmail.com>
2019-08-03 19:14:52 +02:00
Paulchen-Panther
af416ba5fc
i18n corrected
libqt5sql5-sqlite appended to the dependency list
lgtm alerts fixed
added message forwarder to global settings
subscribe type leds-update appended (thanks @Brindosch)
Boblight server port check instead of error message
Race Condition of different priorities are prevented at startup

Signed-off-by: Paulchen-Panther <Paulchen-Panter@protonmail.com>
2019-08-03 19:14:52 +02:00
Paulchen-Panther
3a488e703c
Return 0 in QtGrabber::grabFrame() if error occurs in QtGrabber::setupDisplay()
Signed-off-by: Paulchen-Panther <Paulchen-Panter@protonmail.com>
2019-08-03 19:14:52 +02:00
Paulchen-Panther
c676b640f1
unique sql database connection is created on different threads
Signed-off-by: Paulchen-Panther <Paulchen-Panter@protonmail.com>
2019-08-03 19:14:52 +02:00
Paulchen-Panther
90599e820a
second part of PR #578
Signed-off-by: Paulchen-Panther <Paulchen-Panter@protonmail.com>
2019-08-03 19:14:52 +02:00
Paulchen-Panther
ea796160af
- The first part
- Added CodeDocs config file for customization
- Fixing LGTM alerts
- LGTM bug fixed again
- added token option to hyperion-remote
- fix DBManager::getDB()
- next bugfix
- correct broken signal from SettingManager to Hyperion
- Token list is created after the schema is fetched

Signed-off-by: Paulchen-Panther <Paulchen-Panter@protonmail.com>
2019-08-03 19:14:52 +02:00
Paulchen Panther
77299ba077
Merge pull request #579 from b1rdhous3/master
Renaming versionBranch, JSONEditor Enchancements and Chang Readme.md
2019-07-19 17:44:19 +02:00
brindosch
7e324bb1d3 Fix: WebUI port switch reconnect
The WebUI will get now the new port for next reconnect
It was necessary to add the Access-Control-Allow-Origin header with a wildcard for file serving
2019-07-18 22:32:06 +02:00
LordGrey
4603d65b4f Merge remote-tracking branch 'upstream/master' 2019-07-18 22:10:05 +02:00