Commit Graph

749 Commits (c004c0d81de70f3448b48c69ff09615dc7e28eed)

Author SHA1 Message Date
Michael Zanetti c004c0d81d Make thingclassId optional in AddThing() when there's already a ThingDescriptor 2022-07-28 19:55:32 +02:00
jenkins 2098203f73 Merge PR #537: Fix additional interface command line parameter 2022-06-30 15:04:38 +02:00
jenkins 68be029ede Merge PR #530: Add ping retry feature and provide it to the monitor 2022-06-30 15:04:34 +02:00
jenkins 5900f64b86 Merge PR #525: Migrate pluginid in thing settings when a thing class moves 2022-06-30 15:04:32 +02:00
Simon Stürz 0d20cf7816 Hold reference count of monitor objects
Make host lookup optional
Cleanup pending ping on monitor unregister
2022-06-20 16:58:05 +02:00
Simon Stürz d1db6a3774 Fix network device cache housekeeping and sync the settings 2022-06-20 13:16:42 +02:00
Michael Zanetti 568bbc6972 Smaller fixes in the NetworkDiscovery
Fixes a theoretical memory leak (m_cacheSettings wasn't delete)
which isn't really an issue in practice but valgrind complains on it.

Fixes a typo: m_reties -> m_retries
2022-06-20 13:16:42 +02:00
Simon Stürz 2dbd8c47ba Add ping retry feature and provide it to the monitor 2022-06-20 13:16:42 +02:00
jenkins f33d674d3c Merge PR #529: Provide access to the network device discovery cache 2022-06-16 00:20:52 +02:00
jenkins 1863bb8ddb Merge PR #523: Explicitly destroy experiences 2022-06-16 00:20:45 +02:00
Michael Zanetti 48dd263cd9 Allow configuring warning/info/debug logging levels 2022-06-15 15:53:15 +02:00
Michael Zanetti 785f8cf43c Fix additional interface command line parameter 2022-06-10 17:20:50 +02:00
Simon Stürz fe317cfaae Inform about cache loading 2022-06-03 12:35:36 +02:00
Simon Stürz 289998af32 Align cache updated signal with method wording 2022-06-02 14:09:23 +02:00
Simon Stürz 08d4599f01 Provide access to the network device discovery cache 2022-06-02 14:07:35 +02:00
Michael Zanetti db65beb202 Migrate pluginid in thing settings when a thing class moves between plugins 2022-05-13 11:27:21 +02:00
Michael Zanetti 8efe92e421 Explicitly destroy experiences on shutdown
Fixes an occational crash if an experience accesses
the thingmanager while it is being shut down.
2022-05-13 11:26:47 +02:00
jenkins 569e9fa57d Merge PR #520: Fixes in permit joining timer handling 2022-05-03 23:27:18 +02:00
jenkins 8a3f85ca25 Merge PR #518: Fix webserver tests 2022-05-03 23:27:15 +02:00
jenkins dbcbbfcf97 Merge PR #515: Allow modbus RTU plugins to request a connection reset 2022-05-03 23:27:13 +02:00
jenkins 2b32bca5cf Merge PR #513: Add a timeout to ModbusRtuReplies 2022-05-03 23:27:10 +02:00
jenkins 06ed86bcdd Merge PR #511: Network device monitor 2022-05-03 23:27:07 +02:00
jenkins 44e2e36e16 Merge PR #509: Store the serveruuid as string 2022-05-03 23:27:06 +02:00
jenkins 7bc4d2ec2a Merge PR #508: Add support for listing and removing entries to PyPluginStorage 2022-05-03 23:27:04 +02:00
jenkins 1a06fabda2 Merge PR #507: Add support for datetime objects to pluginStorage in python plugins 2022-05-03 23:27:03 +02:00
Simon Stürz 17fc204122 Fix discovery behaviour if the resouce is not available 2022-05-03 14:30:01 +02:00
Simon Stürz 66d62b87de Update debug categories and use qInfo, fix vietual destructor for the monitor 2022-04-25 17:07:48 +02:00
Simon Stürz 76b7bc1267 Fix ping crash if the host address is not valid 2022-04-25 15:27:35 +02:00
Simon Stürz 61bbd3cbdf Unfriend the discovery class from the monitor 2022-04-25 08:17:37 +02:00
Michael Zanetti af3c928092 Fixes in permit joining timer handling
Emit ZigbeeNetworkChanged when it actually changes in the stack,
not directly after we request the stack to change something as
it may fail, or the effective parameters may be not what we think.
2022-04-23 23:34:39 +02:00
Michael Zanetti 192bdac209 Fix webserver tests
canonicalFilePath() behavior seems to have changed at some point
and not existing files outside the public dir will return a 404
rather than a 403. Ideally the logic would be fixed to first
check for the file being outside the public directory, directly
returning a 403, then checking if the file exists, return a 404
if not, and lastly check for permissions on the file and return
a 403 again of denied. However, that would result in a bigger
change.

Also, the tests were failing all along if syslog exists but is
not readable (code is ok, just bad test) but none of our
autotesters seemed to have such a setup till now.
2022-04-23 00:23:21 +02:00
Simon Stürz c59185672f Add mac address class and unit tests
Finish updated network discovery
Improve ARP and monitor handling
Introduce network device info cache housekeeping
2022-04-13 11:08:29 +02:00
Simon Stürz 14ea1bef4a Restructure network discovery and add discovery 2022-04-13 11:08:00 +02:00
Michael Zanetti b2cc7ac769 Add a timeout to ModbusRtuReply
QModbusReply seems to never finish in some rare cases:
For instance if a request is sent and before the reply arrives, the
modbus adapter is unplugged. This change should keep upper logic
working which relies on requests finishing eventually.

Also fixes the issue that we emit finished() multiple times if
QModbusClient retries multiple times and emits error() for each
attempt. We're only interested in a single result anyways.
2022-04-08 14:33:07 +02:00
Michael Zanetti 93f733311f Fix modbus RTU warning prints 2022-04-08 13:56:46 +02:00
Michael Zanetti 9b7e5e469d Allow modbus RTU plugins to request a connection reset 2022-04-06 23:28:54 +02:00
Jenkins nymea 95c8ad5e3f Merge PR #506: DebugInterface: Fix process finished crash if the http reply timed out in the mean time 2022-03-27 19:49:45 +02:00
Jenkins nymea 3c8dd98400 Merge PR #500: Add debug prints to rule engine 2022-03-27 19:49:37 +02:00
Jenkins nymea 8153e551c1 Merge PR #499: Fix for ThingState which reports minValue instead of maxValue 2022-03-27 19:49:36 +02:00
Jenkins nymea 20956525b3 Merge PR #498: Add discoveryType thing class property 2022-03-27 19:49:35 +02:00
Jenkins nymea d83fed97d8 Merge PR #496: Don't generate events for state changes any more 2022-03-27 19:49:32 +02:00
Jenkins nymea 013c94a907 Merge PR #495: Fix cleaning up things when a setup fails in python plugins 2022-03-27 19:49:31 +02:00
Jenkins nymea 443dbfb42b Merge PR #494: Split thing cache into individual files 2022-03-27 19:49:30 +02:00
Jenkins nymea 5273d87c83 Merge PR #492: Add support for TI z-Stack based Zigbee adapters 2022-03-27 19:49:27 +02:00
Jenkins nymea 4cd37c4788 Merge PR #490: Fix encoding of ZigbeeHandler (Windows CRLF -> Unix LF) 2022-03-27 19:49:26 +02:00
Jenkins nymea 223c0c130b Merge PR #489: Make SSL certificate loading and generating more robust 2022-03-27 19:49:25 +02:00
Jenkins nymea de82c4aa8e Merge PR #487: Fix a crash when removing a currently connected transport 2022-03-27 19:49:23 +02:00
Michael Zanetti 80adc846dc Store the serveruuid as string 2022-03-24 10:25:04 +01:00
Michael Zanetti 1befe6166f Add support for removing entries and listing child keys in PyPluginStorage 2022-03-23 00:23:40 +01:00
Michael Zanetti b77b9a7bb6 Add support for datetime objects to pluginStorage in python plugins 2022-03-22 10:48:58 +01:00