1760 Commits

Author SHA1 Message Date
YevhenBondarenko
2427539f22 merge with develop/3.5.2 2023-08-08 01:46:52 +02:00
Andrii Landiak
8faa1410b6
Edge crud notification: implement event publisher strategy to process pubsub model for detecting changes in entities
* Improve edge notification for entities' CRUD operations. Use service layer to notify instead of TbService

* Improve queue service, delete unused class for edge event updates

* Improve alarm delete and add handle fox delete dao event notification

* Refactoring: provide notification for relations and alarms. Improve logic and bad edge event type using

* Add entity type to SaveEvent to process correct message type to edge

* Improve relation service publish event

* Introduce EdgeEventSourcing service instead of saving edge events on controller/service layers. Part #2

* Improved stability of device edge test

* Push credential updated event only in case update

* Add tenantId to saveUser signature to send correct notification for listener

* Fix tests to send correct notification msg to edge

* Fix tests with correct action type

* Add delete msg to edge for customer

* Refactor ActionEntityEvent to use lombok builder

* Remove unnecessary comments

* Added edgeSynchronizationManager into BaseAlarmProcessor and BaseRelationProcessor

* Fixed license header

* Remove notification to edge from Version Control Service

* Fixed alarm del processing - find related edges inside edge processor

* Fix controller test for publish event to listener if entity was deleted

* Added check for edge imitator messages during login as tenant admin

* Refactoring: Added filtering of relation on EdgeEventSourcingListener

* Refactored to be in sync with PE

* Refactored edge test to be in sync with PE edge test changes

* EdgeControllerTest - moved await block into separate method to reuse it

* Fixed EdgeControllerTest

* Fixed testAssignEdgeToCustomerFromDifferentTenant test

* testSyncEdge - make stable

* Refacroting - update utils method name to pop* in EdgeControllerTest

* testSyncEdge - fixed order and nubmer of edge events

* testGetEdgeEvents - check by pop items, and not by index to improve stability on slow machines

* testGetEdgeEvents - added check that list is empty

* Removed test debug output

* EntityServiceTest - Fixed compilation error after merge

* Improve service layer event publisher to process each notification and validate in listener

* Improve BaseAlarmService to send notification to listener

* Fix asset-device notification action to send delete to all edges

* Delete unnecessary usage of sendMsgToEdge

* Improve processEntityNotification to be in sync with changed needed for PE

* Pull request review - minor refactoring

* Fix tests after review-refactoring

* Refactor tests to be in sync with PE

* Fixed repeated update - added check for old_edge_event table existance before migration

* DeviceEdgeProcessor - do edgeSynchronizationManager as soon as possible to avoid unnecessary downlinks

* BaseEdgeProcessor - refactoring and remove duplicate methods. Introduce EdgeEventType.isAllEdgesRelated

* Organize imports

* Improve Edge test: add sync completed message to await

* Minor refactoring for EdgeProcessor notification: asset and device

* EdgeEventSourcingListener - updated logging to avoid null pointer exception

* BaseAlarmService - added check for alarm to avoid NPE. EdgeEventSourcingListener - added try/catch blocks

* EdgeEventSourcingListener - fixed error message log level

---------

Co-authored-by: Volodymyr Babak <volodymyr.babak@gmail.com>
2023-08-07 13:21:02 +03:00
ViacheslavKlimov
1a93db75e0 Improvements for Microsoft Teams notifications 2023-08-04 17:33:11 +03:00
imbeacon
30dac22b60 Initial commit for gateway commands 2023-08-04 14:29:51 +03:00
Andrew Shvayka
173e229da1
Merge pull request #8786 from ShvaykaD/feature/filter-nodes-improvements
Filter nodes improvements && fixes for enrichment rule nodes && added TbMsgType enum and enforced use of it in corresponding places.
2023-08-04 13:57:10 +03:00
ShvaykaD
c2ce40cd39 added rpc sequential strategies: init commit 2023-08-02 16:05:18 +03:00
Vladyslav_Prykhodko
5c0fb5e9b4 Merge remote-tracking branch 'upstream/develop/3.5.2' into feature/account-notification-settings 2023-08-01 10:45:16 +03:00
Vladyslav_Prykhodko
b8954da47b Merge branch from develop/3.5.2 2023-07-31 15:50:43 +03:00
ViacheslavKlimov
5862b417aa Add custom topic properties configuration 2023-07-28 12:06:04 +03:00
Sergey Matvienko
4f99d75e15 license:format for new classes 2023-07-27 21:38:02 +02:00
Sergey Matvienko
859c820dc3 AbstractRateLimitException introduced in common/data for all rate limit related exceptions 2023-07-27 21:38:02 +02:00
ShvaykaD
2d4fbd6833 added checkMsgType util method to TbMsg & resolved other review comments 2023-07-27 14:48:53 +03:00
Vladyslav_Prykhodko
d54320bc79 Merge remote-tracking branch 'upstream/develop/3.5.2' into feature/microsoft-teams-notifications 2023-07-25 12:40:09 +03:00
ShvaykaD
9d20fa7d9e added additional validation to ActionTypeTest and TbMsgTypeTest 2023-07-21 16:12:34 +03:00
ShvaykaD
2cac9aab9d fix typo 2023-07-19 12:36:36 +03:00
ShvaykaD
883eb472f2 fixes after merge to PE 2023-07-19 12:28:42 +03:00
YevhenBondarenko
4b7cc4571d added deleteLatest api 2023-07-12 19:48:25 +02:00
ViacheslavKlimov
ddfdcef858 Improvements for user notification settings structure 2023-07-12 12:50:29 +03:00
dashevchenko
03b2399c44 fixed list of required fields for entities 2023-07-11 15:01:37 +03:00
ShvaykaD
d9ede8bf50 merge with develop/3.5.2 2023-07-06 15:44:01 +03:00
ShvaykaD
4528348143 replaced new TbMsgMetaData() with TbMsgMetaData.EMPTY and added additional refactoring after review of changes 2023-07-06 13:18:02 +03:00
ShvaykaD
47929ef784 replaced newMsg and trasformMsg with new methods that uses TbMsgType && mark old methods as deprecated && refactoring 2023-07-06 12:20:23 +03:00
YevhenBondarenko
3be53a3605 fixed saveDeviceWithCredentials api 2023-07-05 14:40:44 +02:00
ViacheslavKlimov
ea2d5485f4 Remove Slack from user-level settings 2023-07-05 12:46:35 +03:00
YevhenBondarenko
015429d750 merge with develop/3.5.2 2023-07-04 16:56:20 +02:00
YevhenBondarenko
df2ef64e67 added alarm types cache 2023-07-04 16:40:42 +02:00
ShvaykaD
6c74aa3dff updated EntityFieldsData getFieldValue method to filter out empty strings if ignoreNullStrings is set to true 2023-07-03 13:26:20 +03:00
Andrii Shvaika
002f780905 Merge branch 'develop/3.5.2' into develop/3.6 2023-06-30 16:13:03 +03:00
Andrew Shvayka
ab56f651c7
Merge pull request #8839 from dashevchenko/resourceInfoCache
Added cache for resource info
2023-06-30 16:00:08 +03:00
ViacheslavKlimov
6eb4510e2a User notification settings - by notification type 2023-06-30 13:46:19 +03:00
ShvaykaD
8beb81cf8d added tests for check relation presence node & test for TbMsgType and ActionType & refactoring 2023-06-30 13:35:03 +03:00
YevhenBondarenko
1a12d3c395 merge with develop/3.6 2023-06-29 23:40:43 +02:00
Andrii Shvaika
d17c7dbc28 Merge remote-tracking branch 'origin/develop/3.5.2' into develop/3.6 2023-06-29 18:26:23 +03:00
Andrew Shvayka
707244a7ea
Merge pull request #8830 from volodymyr-babak/edge-event-seq-id
Edge event table - added sequential ID column to handle properly heavy load and cluster cases
2023-06-29 18:24:23 +03:00
Andrii Shvaika
ecae72e994 Merge with develop/3.5.2 2023-06-29 17:00:23 +03:00
ViacheslavKlimov
996f11da9e Improvements for notification template processing 2023-06-28 15:43:26 +03:00
ViacheslavKlimov
7528fceeb2 MicrosoftTeamsNotificationChannel 2023-06-28 14:42:09 +03:00
ShvaykaD
0c4c8353de refactoring & added tests for alarm status filter node & entity and msg type switch nodes & check field presence 2023-06-28 12:43:49 +03:00
dashevchenko
eab633632a added cache for TBResourceInfo 2023-06-28 11:35:54 +03:00
ViacheslavKlimov
d0cbf4efd1 Add acknowledged and cleared properties to AlarmNotificationInfo 2023-06-27 17:14:33 +03:00
Volodymyr Babak
4a0ff8b968
Edge event seq (#82)
* edge event - added seq id auto generated column to fix issue with concurrent write of multiple edge events with the same created time

* kotlin Pair replaced by springframework class

* Handle cases when seq_id column started new cycle

* Added check for null in case entity was deleted

* GeneralEdgeEventFetched - sort order by seqId and not created time

* Edge event table - added migration script to add seq_id column

* Code review updates to be in sync with PE

* Improved handling cases when edge_event.seqId started new cycle

* Edge event table - seq_id column make to be cycled

* Improved handling of cases when seq_id column of edge_event table started new cycle

* Improved stability by properly handling exceptions
2023-06-27 15:42:23 +03:00
ViacheslavKlimov
83641e285f Add TODO for SNMP traps processing 2023-06-27 11:50:29 +03:00
ViacheslavKlimov
0f078b0da2 SNMP traps support 2023-06-26 15:04:31 +03:00
ShvaykaD
a3c0850277 added tests for TbCheckAlarmStatusNode && TbMsgTypeFilterNodeTest && TbOriginatorTypeFilterNodeTest && replaced SessionMsgType && refactoring 2023-06-23 19:00:25 +03:00
ViacheslavKlimov
d49a6c3e92 Notification settings for rules 2023-06-23 16:11:21 +03:00
ViacheslavKlimov
926f484230 Device events 2023-06-22 18:19:37 +03:00
ViacheslavKlimov
854e059435 Option to ignore SNMP response type cast errors 2023-06-22 18:19:16 +03:00
ViacheslavKlimov
09b866c41f Remove unnecessary validation for OID mappings uniqueness 2023-06-22 18:10:03 +03:00
ViacheslavKlimov
014497cd89 User-level notification settings 2023-06-20 12:04:48 +03:00
ShvaykaD
22874e8a65 filter nodes && added TbMsgType enum 2023-06-19 17:55:39 +03:00