16 Commits

Author SHA1 Message Date
Steve Munene 7fb5dd7b55 NOISSUE - Refactor listing for rules and reports (#433)
* add access control to rules engine

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* update authorization method

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* revert code

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* initial implementation

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* remove domain from method

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* fix failing linter

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* fix userid parameter

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* update checksuperadmin method

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* revert changes

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* address comments

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

---------

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>
2026-03-16 14:39:49 +01:00
Steve Munene 2ef8437d8b MG-370 - Add fine grained access control to alarms (#404)
* add access control to rules engine

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* add access control to reports

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* add access control to alarms

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* fix failing linter

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* remove unused variables

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* update authorization method

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* revert code

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* remove roles

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* update alarm permissions

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* update alarm permissions

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* address comments

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* fix tests

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* revert endpoint changes

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* fix make fetch

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* revert env variable

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* remove rule prefix

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* remove trailing line

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* remove unused constants

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* re consumer

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* update listing

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* fix tests

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* fix linter

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* fix rule roles interface

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* refactor listing commands

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* fetch supermq

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* address coments

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* update script

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* address comments

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* fetch supermq

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* fix time layout

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* fix failing linter

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* fix failing linter

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* fix role name

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* fix failing linter

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* address comments

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* remove white spaces

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* update check usperadmin method

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* update go mod file

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* fix tests

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* add missing env variable

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

---------

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>
2026-03-13 14:29:32 +01:00
Steve Munene 362a4fc76d MG-370 - Add fine grained access control to rules engine (#402)
* update go mod file

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* fix rules endpoint tests

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* fix yaml file

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* fix build

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* address comments

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* remove roles from alarms

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* change approach for schema combaine

Signed-off-by: Arvindh <arvindh91@gmail.com>

* change approach for schema combaine

Signed-off-by: Arvindh <arvindh91@gmail.com>

* fix permissions for rules

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* fix authorization file

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* fix linter

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* fix linter

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

---------

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>
Signed-off-by: Arvindh <arvindh91@gmail.com>
Co-authored-by: Arvindh <arvindh91@gmail.com>
2026-03-05 11:42:51 +01:00
Steve Munene 99e2c7aec4 NOISSUE - Refactor alarms, reports and rule engines middlewares (#369)
* refactor middleware

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* update go mod file

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* fix tests

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* fix rules tests

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* revert common code

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* update supermq version

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

---------

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>
2025-12-29 11:23:43 +01:00
Ian Ngethe Muchiri 7ef90440f2 MG-853 - Add Slack output integration (#315)
* add slack integration

Signed-off-by: ianmuchyri <ianmuchiri8@gmail.com>

* allow support for multiple message options

Signed-off-by: ianmuchyri <ianmuchiri8@gmail.com>

* add message to slack struct

Signed-off-by: ianmuchyri <ianmuchiri8@gmail.com>

* update template name

Signed-off-by: ianmuchyri <ianmuchiri8@gmail.com>

* group postgres and slack

Signed-off-by: ianmuchyri <ianmuchiri8@gmail.com>

---------

Signed-off-by: ianmuchyri <ianmuchiri8@gmail.com>
2025-09-26 11:24:31 +02:00
Arvindh ffc7a1ff78 NOISSUE - Add callout in Rule Engine Service (#277)
* add callout to re

Signed-off-by: Arvindh <arvindh91@gmail.com>

* add callout to re

Signed-off-by: Arvindh <arvindh91@gmail.com>

* add callout to re

Signed-off-by: Arvindh <arvindh91@gmail.com>

* add rule events

Signed-off-by: Arvindh <arvindh91@gmail.com>

* add rule events

Signed-off-by: Arvindh <arvindh91@gmail.com>

* add rule events

Signed-off-by: Arvindh <arvindh91@gmail.com>

* remove lints

Signed-off-by: Arvindh <arvindh91@gmail.com>

* remove lints

Signed-off-by: Arvindh <arvindh91@gmail.com>

* remove decoders

Signed-off-by: Arvindh <arvindh91@gmail.com>

* remove lints

Signed-off-by: Arvindh <arvindh91@gmail.com>

* remove lints

Signed-off-by: Arvindh <arvindh91@gmail.com>

* replace interface{} with any

Signed-off-by: Arvindh <arvindh91@gmail.com>

* optimization of event

Signed-off-by: Arvindh <arvindh91@gmail.com>

* remove lints

Signed-off-by: Arvindh <arvindh91@gmail.com>

* align code

Signed-off-by: Arvindh <arvindh91@gmail.com>

---------

Signed-off-by: Arvindh <arvindh91@gmail.com>
2025-08-26 09:17:27 +02:00
Nataly Musilah e7633ffafd NOISSUE - Update alarms and reports sorting (#272)
* update alarms and reports

Signed-off-by: Musilah <nataleigh.nk@gmail.com>

* fix linter

Signed-off-by: Musilah <nataleigh.nk@gmail.com>

* fix structs

Signed-off-by: Musilah <nataleigh.nk@gmail.com>

* fix defDir

Signed-off-by: Musilah <nataleigh.nk@gmail.com>

* remove name from alarms

Signed-off-by: Musilah <nataleigh.nk@gmail.com>

* use switch clases

Signed-off-by: Musilah <nataleigh.nk@gmail.com>

* chore: update SMQ dep

Signed-off-by: Felix Gateru <felix.gateru@gmail.com>

* use if statements for 3 cases

Signed-off-by: Musilah <nataleigh.nk@gmail.com>

* chore: bump SMQ version

Signed-off-by: Felix Gateru <felix.gateru@gmail.com>

* use api keys

Signed-off-by: Musilah <nataleigh.nk@gmail.com>

* use COALESCE for updatedAt

Signed-off-by: Musilah <nataleigh.nk@gmail.com>

* fix lint

Signed-off-by: Musilah <nataleigh.nk@gmail.com>

---------

Signed-off-by: Musilah <nataleigh.nk@gmail.com>
Signed-off-by: Felix Gateru <felix.gateru@gmail.com>
Co-authored-by: Felix Gateru <felix.gateru@gmail.com>
2025-08-19 22:34:55 +02:00
Nataly Musilah f4e3cfab6d NOISSUE - Add rules ordering by order and name (#265)
Signed-off-by: Musilah <nataleigh.nk@gmail.com>
2025-08-06 09:49:10 +02:00
Dušan Borovčanin bf5e18acb4 NOISSUE - Fix RE schedule (#234)
* NOISSUE - Fix RE schedule

Signed-off-by: Dusan Borovcanin <borovcanindusan1@gmail.com>

* Add domain to the scheduled message

Signed-off-by: Dusan Borovcanin <borovcanindusan1@gmail.com>

* Remove debug log

Signed-off-by: Dusan Borovcanin <borovcanindusan1@gmail.com>

---------

Signed-off-by: Dusan Borovcanin <borovcanindusan1@gmail.com>
2025-06-30 13:28:37 +02:00
Ian Ngethe Muchiri 0d48e4ecdd MG-820 - RE outputs handling (#213)
* Fix: Update send alarm output handling

Signed-off-by: ianmuchyri <ianmuchiri8@gmail.com>

* Fix: Update send email output

Signed-off-by: ianmuchyri <ianmuchiri8@gmail.com>

* Fix: Update remote posgres output handling

Signed-off-by: ianmuchyri <ianmuchiri8@gmail.com>

* Fix: Update keys for result and message to constants

Signed-off-by: ianmuchyri <ianmuchiri8@gmail.com>

* Fix: Remove unused param

Signed-off-by: ianmuchyri <ianmuchiri8@gmail.com>

* Fix: Remove test for query by output channel

Signed-off-by: ianmuchyri <ianmuchiri8@gmail.com>

* Fix: Separate outputs

Signed-off-by: ianmuchyri <ianmuchiri8@gmail.com>

* Fix: Revert docker compose changes

Signed-off-by: ianmuchyri <ianmuchiri8@gmail.com>

* Update mocks

Signed-off-by: ianmuchyri <ianmuchiri8@gmail.com>

* Fix: Update license header

Signed-off-by: ianmuchyri <ianmuchiri8@gmail.com>

* Fix: Update output type

Signed-off-by: ianmuchyri <ianmuchiri8@gmail.com>

* Fix: Update handling outputs

Signed-off-by: ianmuchyri <ianmuchiri8@gmail.com>

* Fix: Update test outputs

Signed-off-by: ianmuchyri <ianmuchiri8@gmail.com>

* Fix: rename publisher to channel

Signed-off-by: ianmuchyri <ianmuchiri8@gmail.com>

* Fix: update imports

Signed-off-by: ianmuchyri <ianmuchiri8@gmail.com>

* Fix: Update unmarshal outputs

Signed-off-by: ianmuchyri <ianmuchiri8@gmail.com>

* NOISSUE - Fix JSON marshalling and unmarshalling (#1)

Signed-off-by: Dusan Borovcanin <borovcanindusan1@gmail.com>

* Fix: Update outputs

Signed-off-by: ianmuchyri <ianmuchiri8@gmail.com>

* Fix: update the templating

Signed-off-by: ianmuchyri <ianmuchiri8@gmail.com>

* Fix: update how we marshal alarms

Signed-off-by: ianmuchyri <ianmuchiri8@gmail.com>

---------

Signed-off-by: ianmuchyri <ianmuchiri8@gmail.com>
Signed-off-by: Dusan Borovcanin <borovcanindusan1@gmail.com>
Co-authored-by: Dušan Borovčanin <borovcanindusan1@gmail.com>
2025-06-26 17:35:46 +02:00
Steve Munene 184a9161d6 MG-154 - Add Tags in Rule Engine listing and support filter by tags (#212)
* add tags to repo layer

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* update service layer

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* update api layer

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* update tests

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* address comments

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* fix postgres methods

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* fix logic

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

---------

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>
2025-06-20 16:28:24 +02:00
Dušan Borovčanin 9a62ee6068 NOISSUE - Add Golang support to RE (#161)
Signed-off-by: Dusan Borovcanin <borovcanindusan1@gmail.com>
2025-06-16 12:31:26 +02:00
Steve Munene dcd5ff914d MG-136 - Move reports to a separate service (#152)
* initial implementation

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* initial implementation

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* add remove report from nats handler

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* add license header

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* fix failing linter

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* remove unused code

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* update docker compose

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* address comments

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* fix failing linter

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* move runinfo to pkg

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* update report handler

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* update reports handler

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* update handler in reports

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* update repo method from time to due

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* fix validation methods

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* address comments

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* update reports port to 9017

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* update nginx to support reports

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* fix reports location in nginx

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

* update env variable

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>

---------

Signed-off-by: nyagamunene <stevenyaga2014@gmail.com>
2025-06-16 12:10:50 +02:00
Dušan Borovčanin 5b5fa78032 NOISSUE - Fix RE logging (#176)
Signed-off-by: Dusan Borovcanin <borovcanindusan1@gmail.com>
2025-05-27 14:31:26 +02:00
Dušan Borovčanin 831674b036 NOISSUE - Fix scheduler (#131)
* Rename and reorganize files

Signed-off-by: Dusan Borovcanin <borovcanindusan1@gmail.com>

* Fix scheduler

Signed-off-by: Dusan Borovcanin <borovcanindusan1@gmail.com>

* Fix scheduler and use UTC

Signed-off-by: Dusan Borovcanin <borovcanindusan1@gmail.com>

* Update scheduler calculation

Signed-off-by: Dusan Borovcanin <borovcanindusan1@gmail.com>

* Update Rules loop

Signed-off-by: Dusan Borovcanin <borovcanindusan1@gmail.com>

* Fix tests

Signed-off-by: Dusan Borovcanin <borovcanindusan1@gmail.com>

* Fix linter errors

Signed-off-by: Dusan Borovcanin <borovcanindusan1@gmail.com>

* Fix due

Signed-off-by: Dusan Borovcanin <borovcanindusan1@gmail.com>

* Remove faling tests

Signed-off-by: Dusan Borovcanin <borovcanindusan1@gmail.com>

---------

Signed-off-by: Dusan Borovcanin <borovcanindusan1@gmail.com>
2025-04-29 13:30:24 +02:00
Dušan Borovčanin 4e9480266e NOISSUE - Add script outputs (#121)
* Update RE to use pure Go instead of Lua bindings

Signed-off-by: Dusan Borovcanin <borovcanindusan1@gmail.com>

* Fix RE DB

Signed-off-by: Dusan Borovcanin <borovcanindusan1@gmail.com>

* Fix nil error case

Signed-off-by: Dusan Borovcanin <borovcanindusan1@gmail.com>

* Fix adding query

Signed-off-by: Dusan Borovcanin <borovcanindusan1@gmail.com>

* Fix constraints on kind and logic type

Signed-off-by: Dusan Borovcanin <borovcanindusan1@gmail.com>

* Update RE to use multiple outputs

Signed-off-by: Dusan Borovcanin <borovcanindusan1@gmail.com>

* Update PG writer output

Signed-off-by: Dusan Borovcanin <borovcanindusan1@gmail.com>

* Fix protocol error in MQTT forwareder

Signed-off-by: Dusan Borovcanin <borovcanindusan1@gmail.com>

* Fix rules error handings

Signed-off-by: Dusan Borovcanin <borovcanindusan1@gmail.com>

* Add false value check

Signed-off-by: Dusan Borovcanin <borovcanindusan1@gmail.com>

* Fix topic filtering

Signed-off-by: Dusan Borovcanin <borovcanindusan1@gmail.com>

* Fix consumers

Signed-off-by: Dusan Borovcanin <borovcanindusan1@gmail.com>

* Fix publisher

Signed-off-by: Dusan Borovcanin <borovcanindusan1@gmail.com>

* Fix mocks

Signed-off-by: Dusan Borovcanin <borovcanindusan1@gmail.com>

* Fix tests

Signed-off-by: Dusan Borovcanin <borovcanindusan1@gmail.com>

---------

Signed-off-by: Dusan Borovcanin <borovcanindusan1@gmail.com>
2025-04-24 23:27:08 +02:00