From f0835e4b960c8959df43af81963b22ba3805b1f3 Mon Sep 17 00:00:00 2001 From: "kai.jeschek" Date: Thu, 7 Sep 2023 17:01:23 +0200 Subject: [PATCH 1/6] Add model for alerting settings; --- openems/__manifest__.py | 2 +- openems/controllers/alerting.py | 28 +++++++++---- ...rting_generic.xml => alerting_offline.xml} | 2 +- openems/models/device.py | 41 +++++++++++++++++-- openems/models/user.py | 3 ++ openems/security/ir.model.access.csv | 3 ++ openems/security/openems.xml | 1 + openems/views/device.xml | 16 +++++++- 8 files changed, 82 insertions(+), 14 deletions(-) rename openems/mail/openems/{alerting_generic.xml => alerting_offline.xml} (99%) diff --git a/openems/__manifest__.py b/openems/__manifest__.py index 5a084d9..52e424f 100644 --- a/openems/__manifest__.py +++ b/openems/__manifest__.py @@ -24,7 +24,7 @@ "views/setup_protocol.xml", "views/user.xml", "views/stock_production_lot_views.xml", - "mail/openems/alerting_generic.xml", + "mail/openems/alerting_offline.xml", "mail/openems/setup_protocol_customer.xml", "mail/openems/setup_protocol_installer.xml", "mail/openems/user_registration.xml", diff --git a/openems/controllers/alerting.py b/openems/controllers/alerting.py index 686b00d..ea40fa7 100644 --- a/openems/controllers/alerting.py +++ b/openems/controllers/alerting.py @@ -17,13 +17,22 @@ def __init__(self, sentAt: datetime, edgeId: str, userIds: list[int]) -> None: class Alerting(http.Controller): __logger = logging.getLogger("Alerting") - @http.route("/openems_backend/send_alerting_email", type="json", auth="user") - def old(self, ids: list, now: str, edgeId: str = ''): - params = [{"edgeId":edgeId, "recipients":ids}] - self.index(now, params) + @http.route("/openems_backend/alerting_sumState_email", type="json", auth="user") + def sum_state_alerting(self, ids: list, now: str, edgeId: str = ''): + template = request.env.ref('openems.sum_state_alerting_email') + edgeIds = [param['edgeId'] for param in params] + edges = http.request.env['fems.device'].search([('name','in', edgeIds)]) + + for edge in edges: + try: + template.send_mail(res_id=edge.id, force_send=True) + except Exception as err: + self.__logger.error('[' + str(err) + '] Unable to send template[' + str(template.name) +'] for edge[id=' + str(edge.id) + ']') + + return {} - @http.route("/openems_backend/mail/alerting_email", type="json", auth="user") - def index(self, sentAt: str, params: list[dict]): + @http.route("/openems_backend/mail/alerting_offline_email", type="json", auth="user") + def offline_alerting(self, sentAt: str, params: list[dict]): msgs = self.__get_params(sentAt, params) for msg in msgs: @@ -40,11 +49,14 @@ def __get_params(self, sentAt, params) -> list[Message]: return msgs def __get_template(self, device_id): - template = request.env.ref("openems.alerting_email_generic") + template = request.env.ref("openems.alerting_offline") return template def __send_mails(self, template, msg: Message): - roles = http.request.env["openems.device_user_role"].search([("id","in",msg.userIds),("device_id","=",msg.edgeId)]) + roles = http.request.env['openems.device_user_role'].search( + [('id','in',msg.userIds),('device_id','=',msg.edgeId),('user_id.partner_id.email','!=',False)] + ) + for role in roles: try: template.send_mail(res_id=role.id, force_send=True) diff --git a/openems/mail/openems/alerting_generic.xml b/openems/mail/openems/alerting_offline.xml similarity index 99% rename from openems/mail/openems/alerting_generic.xml rename to openems/mail/openems/alerting_offline.xml index 3d1a491..bae649d 100644 --- a/openems/mail/openems/alerting_generic.xml +++ b/openems/mail/openems/alerting_offline.xml @@ -1,7 +1,7 @@ - + E-Mail Alerting ]]> diff --git a/openems/models/device.py b/openems/models/device.py index f7fbaf7..56b946c 100644 --- a/openems/models/device.py +++ b/openems/models/device.py @@ -44,7 +44,7 @@ def _compute_monitoring_url(self): url = ( self.env["ir.config_parameter"].sudo().get_param("openems.edge_monitoring_url") ) - rec.monitoring_url = url + rec.name + rec.monitoring_url = url + rec.name if url and rec.name else "" producttype = fields.Selection( [ @@ -93,6 +93,9 @@ def _compute_monitoring_url(self): user_role_ids = fields.One2many( "openems.device_user_role", "device_id", string="Roles", tracking=True ) + alerting_settings = fields.One2many( + "openems.alerting", "device_id", string="Alerting", tracking=True + ) openems_config_update_ids = fields.One2many( "openems.openemsconfigupdate", "device_id", string="OpenEMS Config Updates" ) @@ -147,8 +150,6 @@ class DeviceUserRole(models.Model): default="guest", required=True, ) - time_to_wait = fields.Integer(string="Notification", default=1440) - last_notification = fields.Datetime(string="Last notification sent") class OpenemsConfigUpdate(models.Model): @@ -176,3 +177,37 @@ def _compute_text_teaser(self): for rec in self: # get up to 100 characters from first line rec.text_teaser = rec.text.splitlines()[0][0:100] if rec.text else False + +class Alerting(models.Model): + _name = "openems.alerting" + _description = "OpenEMS Edge AlertingSettings" + _sql_constraints = [ + ( + "device_user_uniq", + "unique(device_id, user_id)", + "User already has Alerting Settings.", + ), + ] + + device_id = fields.Many2one("openems.device", string="OpenEMS Edge") + user_id = fields.Many2one("res.users", string="User") + + offline_delay = fields.Integer(string="Offline Notification", default=1440) + warning_delay = fields.Integer(string="Warning Notification", default=1440) + fault_delay = fields.Integer(string="Fault Notification", default=1440) + + offline_last_notification = fields.Datetime(string="Last Offline notification sent") + sum_state_last_notification = fields.Datetime(string="Last SumState notification sent") + + device_name = fields.Text(compute="_compute_device_name", store="True") + user_login = fields.Text(compute="_compute_user_login", store="True") + + @api.depends("device_id") + def _compute_device_name(self): + for rec in self: #device = self.env['openems.device'].browse(self.device_ids[0].id) + rec.device_name = rec.device_id.name; + + @api.depends("user_id") + def _compute_user_login(self): + for rec in self: #device = self.env['openems.device'].browse(self.device_ids[0].id) + rec.user_login = rec.user_id.login; \ No newline at end of file diff --git a/openems/models/user.py b/openems/models/user.py index 362771a..35799f7 100644 --- a/openems/models/user.py +++ b/openems/models/user.py @@ -18,6 +18,9 @@ class ResUsers(models.Model): device_role_ids = fields.One2many( "openems.device_user_role", "user_id", string="Roles" ) + alerting_settings = fields.One2many( + "openems.alerting", "user_id", string="Alerting" + ) openems_language = fields.Selection( [ ("EN", "English"), diff --git a/openems/security/ir.model.access.csv b/openems/security/ir.model.access.csv index 6e74aca..0a570c2 100644 --- a/openems/security/ir.model.access.csv +++ b/openems/security/ir.model.access.csv @@ -8,6 +8,9 @@ access_openems_device_tag_manager,access_openems_device_tag_manager,openems.mode access_openems_device_user_role_portal,access_openems_device_user_role_portal,openems.model_openems_device_user_role,base.group_portal,1,0,0,0 access_openems_device_user_role_user,access_openems_device_user_role_user,openems.model_openems_device_user_role,base.group_user,1,0,0,0 access_openems_device_user_role_manager,access_openems_device_user_role_manager,openems.model_openems_device_user_role,openems.group_openems_manager,1,1,1,1 +access_openems_alerting_portal,access_openems_alerting_portal,openems.model_openems_alerting,base.group_portal,1,0,0,0 +access_openems_alerting_user,access_openems_alerting_user,openems.model_openems_alerting,base.group_user,1,0,0,0 +access_openems_alerting_manager,access_openems_alerting_manager,openems.model_openems_alerting,openems.group_openems_manager,1,1,1,1 access_openems_systemmessage_portal,access_openems_systemmessage_portal,openems.model_openems_systemmessage,base.group_portal,1,0,0,0 access_openems_systemmessage_user,access_openems_systemmessage_user,openems.model_openems_systemmessage,base.group_user,1,0,0,0 access_openems_systemmessage_manager,access_openems_systemmessage_manager,openems.model_openems_systemmessage,openems.group_openems_manager,1,1,1,1 diff --git a/openems/security/openems.xml b/openems/security/openems.xml index 56d0eb8..1b448cc 100644 --- a/openems/security/openems.xml +++ b/openems/security/openems.xml @@ -30,6 +30,7 @@ >Website: Show only approved devices to Portal and User [('user_role_ids.user_id','in',[user.id])] + [('alerting_settings.user_id','in',[user.id])] - @@ -178,6 +177,21 @@ + + + + + + + + + + + +
From 4885b83e02d52969fe6b2e9c1200271e943cd799 Mon Sep 17 00:00:00 2001 From: "kai.jeschek" Date: Thu, 14 Sep 2023 12:40:58 +0200 Subject: [PATCH 2/6] SumState-Template; Update alerting.py; --- openems/__manifest__.py | 3 +- openems/controllers/alerting.py | 67 +++-- openems/mail/openems/alerting_offline.xml | 42 ++-- openems/mail/openems/alerting_sum_state.xml | 265 ++++++++++++++++++++ openems/models/device.py | 21 +- 5 files changed, 358 insertions(+), 40 deletions(-) create mode 100644 openems/mail/openems/alerting_sum_state.xml diff --git a/openems/__manifest__.py b/openems/__manifest__.py index 52e424f..16f61fb 100644 --- a/openems/__manifest__.py +++ b/openems/__manifest__.py @@ -11,7 +11,7 @@ "website": "https://openems.io", "license": "AGPL-3", "category": "Specific Industry Applications", - "depends": ["base", "web", "mail", "crm", "resource", "stock", "web_m2x_options"], + "depends": ["base", "web", "mail", "crm", "resource", "stock", "web_m2x_options", "partner_firstname"], "data": [ "data/ir_config_parameter.xml", "data/res_partner_category.xml", @@ -25,6 +25,7 @@ "views/user.xml", "views/stock_production_lot_views.xml", "mail/openems/alerting_offline.xml", + "mail/openems/alerting_sum_state.xml", "mail/openems/setup_protocol_customer.xml", "mail/openems/setup_protocol_installer.xml", "mail/openems/user_registration.xml", diff --git a/openems/controllers/alerting.py b/openems/controllers/alerting.py index ea40fa7..08133c0 100644 --- a/openems/controllers/alerting.py +++ b/openems/controllers/alerting.py @@ -1,9 +1,14 @@ import logging from datetime import datetime +from enum import Enum from odoo import http from odoo.http import request +class SumState(Enum): + FAULT = 0 + WARNING = 1 + class Message: sentAt: datetime edgeId: str @@ -13,53 +18,75 @@ def __init__(self, sentAt: datetime, edgeId: str, userIds: list[int]) -> None: self.sentAt = sentAt self.edgeId = edgeId self.userIds = userIds + +class SumStateMessage(Message): + state: SumState + + def __init__(self, sentAt: datetime, edgeId: str, userIds: list[int], state: SumState) -> None: + super().__init__(sentAt, edgeId, userIds) + self.state = state class Alerting(http.Controller): __logger = logging.getLogger("Alerting") - @http.route("/openems_backend/alerting_sumState_email", type="json", auth="user") - def sum_state_alerting(self, ids: list, now: str, edgeId: str = ''): - template = request.env.ref('openems.sum_state_alerting_email') - edgeIds = [param['edgeId'] for param in params] - edges = http.request.env['fems.device'].search([('name','in', edgeIds)]) + @http.route("/openems_backend/mail/alerting_sum_state", type="json", auth="user") + def sum_state_alerting(self, sentAt: str, params: list[dict]): + msgs = self.__get_sum_state_params(sentAt, params) + update_func = lambda role, at: { role.write({"sum_state_last_notification": at})} - for edge in edges: - try: - template.send_mail(res_id=edge.id, force_send=True) - except Exception as err: - self.__logger.error('[' + str(err) + '] Unable to send template[' + str(template.name) +'] for edge[id=' + str(edge.id) + ']') - + if len(msgs) == 0: + self.__logger.error("Scheduled SumState-Alerting-Mail without any recipients!!!") + + for msg in msgs: + template = request.env.ref('openems.alerting_sum_state') + #template = self.__get_template(msg.edgeId) + self.__send_mails(template, msg, update_func) + return {} - @http.route("/openems_backend/mail/alerting_offline_email", type="json", auth="user") + @http.route("/openems_backend/mail/alerting_offline", type="json", auth="user") def offline_alerting(self, sentAt: str, params: list[dict]): - msgs = self.__get_params(sentAt, params) + msgs = self.__get_offline_params(sentAt, params) + update_func = lambda role, at: { role.write({"offline_last_notification": at})} for msg in msgs: template = self.__get_template(msg.edgeId) - self.__send_mails(template, msg) + self.__send_mails(template, msg, update_func) return {} - def __get_params(self, sentAt, params) -> list[Message]: + def __get_offline_params(self, sentAt, params) -> list[Message]: + msgs = list() + sent = datetime.strptime(sentAt, "%Y-%m-%d %H:%M:%S") + for param in params: + edgeId = param["edgeId"] + recipients = param["recipients"] + msgs.append(Message(sent, edgeId, recipients)); + return msgs + + def __get_sum_state_params(self, sentAt, params) -> list[SumStateMessage]: msgs = list() sent = datetime.strptime(sentAt, "%Y-%m-%d %H:%M:%S") for param in params: - msgs.append(Message(sent, param["edgeId"], param["recipients"])); + edgeId = param["edgeId"] + recipients = param["recipients"] + state = param["state"] + msgs.append(SumStateMessage(sent, edgeId, recipients, state)); return msgs def __get_template(self, device_id): template = request.env.ref("openems.alerting_offline") return template - def __send_mails(self, template, msg: Message): - roles = http.request.env['openems.device_user_role'].search( - [('id','in',msg.userIds),('device_id','=',msg.edgeId),('user_id.partner_id.email','!=',False)] + def __send_mails(self, template, msg: Message, update_func): + roles = http.request.env['openems.alerting'].search( + [('user_id','in',msg.userIds),('device_id','=',msg.edgeId)] ) for role in roles: try: template.send_mail(res_id=role.id, force_send=True) - role.write({"last_notification": msg.sentAt}) + update_func(role, msg.sentAt) + #role.write({"offline_last_notification": msg.sentAt}) except Exception as err: self.__logger.error("[" + str(err) + "] Unable to send template[" + str(template.name) +"] to edgeUser[user=" + str(role.id) + ", edge=" + str(msg.edgeId)+ "]") \ No newline at end of file diff --git a/openems/mail/openems/alerting_offline.xml b/openems/mail/openems/alerting_offline.xml index bae649d..250d2e1 100644 --- a/openems/mail/openems/alerting_offline.xml +++ b/openems/mail/openems/alerting_offline.xml @@ -3,7 +3,7 @@ E-Mail Alerting - + ]]> {{object.user_id.partner_id.id}} OpenEMS Alert - Edge is offline @@ -127,14 +127,22 @@ -
Dear - , +
Dear + + , + + + Ms/Mr , + + + Customer, +
-
Your OpenEMS Edge with number is offline since:
+
Your OpenEMS Edge with number is offline since:
@@ -142,7 +150,7 @@
- + () (UTC) @@ -161,18 +169,22 @@ Edge-Version - - - - - - Type - - - - + + + + + Type + + + + + + + + + diff --git a/openems/mail/openems/alerting_sum_state.xml b/openems/mail/openems/alerting_sum_state.xml new file mode 100644 index 0000000..da4c0fa --- /dev/null +++ b/openems/mail/openems/alerting_sum_state.xml @@ -0,0 +1,265 @@ + + + + + E-Mail SumState Alerting + + ]]> + {{object.user_id.partner_id.id}} + OpenEMS Alert - Edge is in {{object.device_id.openems_sum_state_level}} State + false + + + + + + OpenEMS Alert - Edge is offline + + + + + + + + + + + + + + + +
+ + + + + + +
+ +
+ + + + + + +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + +
+

+

+ +
+
Dear + + , + + + Ms/Mr , + + + Customer, + +
+
+
+ Your OpenEMS Edge with number is in + + + + + + + + + + since: +
+
+
+ + + () + + + (UTC) + +
+
+ + + + + + + + + + + + + + +
Info
+ Edge-Version + + +
+ Type + + + + + +
+
+
Best Regards
+
+
OpenEMS Association e.V.
+
+
+ +
+
+ +
+ +
+ + + + + + +
+ +
+ + + + + + + + + +
+
Wenn Sie keine E-Mail Benachrichtigung mehr wünschen, können Sie die Funktion hier deaktivieren.
+
+
Dies ist eine automatisch generierte Nachricht. Bitte antworten Sie nicht auf diese Nachricht!
+
+
+ +
+
+ +
+ + + + ]]> +
+
+
+
diff --git a/openems/models/device.py b/openems/models/device.py index 56b946c..5644d4a 100644 --- a/openems/models/device.py +++ b/openems/models/device.py @@ -1,5 +1,5 @@ from odoo import api, fields, models - +from datetime import datetime class Device(models.Model): _name = "openems.device" @@ -202,12 +202,25 @@ class Alerting(models.Model): device_name = fields.Text(compute="_compute_device_name", store="True") user_login = fields.Text(compute="_compute_user_login", store="True") + user_role = fields.Selection( + [("admin", "Admin"), ("installer", "Installer"), ("owner", "Owner"), ("guest", "Guest"),], + compute="_compute_user_role", store="False") + @api.depends("device_id") def _compute_device_name(self): - for rec in self: #device = self.env['openems.device'].browse(self.device_ids[0].id) + for rec in self: rec.device_name = rec.device_id.name; @api.depends("user_id") def _compute_user_login(self): - for rec in self: #device = self.env['openems.device'].browse(self.device_ids[0].id) - rec.user_login = rec.user_id.login; \ No newline at end of file + for rec in self: + rec.user_login = rec.user_id.login; + + @api.depends("user_id") + def _compute_user_role(self): + for rec in self: + user_role: DeviceUserRole = rec.user_id.device_role_ids.search([('device_id','=',rec.device_id.id)]) + if user_role: + return user_role.role + else: + return rec.user_id.global_role \ No newline at end of file From f5c2adaca06177e7b0c46eafbcebdccc541121fa Mon Sep 17 00:00:00 2001 From: da-Kai Date: Tue, 21 Nov 2023 13:40:57 +0100 Subject: [PATCH 3/6] update icon --- openems/static/description/icon.png | Bin 0 -> 53271 bytes openems/static/description/openems-icon.jpg | Bin 91038 -> 0 bytes openems/views/device.xml | 2 +- 3 files changed, 1 insertion(+), 1 deletion(-) create mode 100755 openems/static/description/icon.png delete mode 100644 openems/static/description/openems-icon.jpg diff --git a/openems/static/description/icon.png b/openems/static/description/icon.png new file mode 100755 index 0000000000000000000000000000000000000000..ee0aed1a0d5b623df9c4f3ead2a8d92ab7efc315 GIT binary patch literal 53271 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 Date: Wed, 10 Jan 2024 10:34:45 +0100 Subject: [PATCH 4/6] update alerting mail templates --- openems/__manifest__.py | 1 - openems/data/ir_attachment_logos.xml | 13 - openems/mail/openems/alerting_offline.xml | 102 +++-- openems/mail/openems/alerting_sum_state.xml | 115 +++--- openems/mail/openems/user_registration.xml | 395 ++++++++++---------- openems/static/mail/OpenEMS-Logo.jpg | Bin 0 -> 152320 bytes 6 files changed, 318 insertions(+), 308 deletions(-) delete mode 100644 openems/data/ir_attachment_logos.xml create mode 100644 openems/static/mail/OpenEMS-Logo.jpg diff --git a/openems/__manifest__.py b/openems/__manifest__.py index d19c8de..8ed6b67 100644 --- a/openems/__manifest__.py +++ b/openems/__manifest__.py @@ -15,7 +15,6 @@ "data": [ "data/ir_config_parameter.xml", "data/res_partner_category.xml", - "data/ir_attachment_logos.xml", "security/openems.xml", "security/ir.model.access.csv", "report/setup_protocol.xml", diff --git a/openems/data/ir_attachment_logos.xml b/openems/data/ir_attachment_logos.xml deleted file mode 100644 index e18bfc9..0000000 --- a/openems/data/ir_attachment_logos.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - logo.png - OpenEMS Logo for Mail-Templates - image/png - binary - - - - - diff --git a/openems/mail/openems/alerting_offline.xml b/openems/mail/openems/alerting_offline.xml index 250d2e1..67bdc39 100644 --- a/openems/mail/openems/alerting_offline.xml +++ b/openems/mail/openems/alerting_offline.xml @@ -2,13 +2,11 @@ - E-Mail Alerting + E-Mail Offline-Alerting ]]> {{object.user_id.partner_id.id}} OpenEMS Alert - Edge is offline - false - @@ -86,7 +84,7 @@ - -
+ +
@@ -119,41 +117,41 @@ @@ -166,25 +164,28 @@ - - - - + + - - + + +
-

+

-
-
Dear +
- , - - - Ms/Mr , - - - Customer, + + , + Ms/Mr , + Customer,
-
Your OpenEMS Edge with number is offline since:
+
Your OpenEMS Edge with number is offline since: +
- - - () - - - (UTC) + + + + + + + (UTC) +
- Edge-Version + OpenEMS-Version - + + + + UNKNOWN
- Type - - - - +
+ Type + + + + + -
@@ -195,7 +196,7 @@ -
OpenEMS Association e.V.
+
OpenEMS Association e.V.
@@ -224,12 +225,33 @@ -
+
If you do no longer wish to receive email notifications, you can disable the feature hier .
-
Dies ist eine automatisch generierte Nachricht. Bitte antworten Sie nicht auf diese Nachricht!
+
This is an automatically generated message. Please do not reply to this message!
+ + + + + + + + + + +
+ OpenEMS Logo +
+ + + + +

+

+ diff --git a/openems/mail/openems/alerting_sum_state.xml b/openems/mail/openems/alerting_sum_state.xml index da4c0fa..7125bde 100644 --- a/openems/mail/openems/alerting_sum_state.xml +++ b/openems/mail/openems/alerting_sum_state.xml @@ -7,14 +7,12 @@ ]]> {{object.user_id.partner_id.id}} OpenEMS Alert - Edge is in {{object.device_id.openems_sum_state_level}} State - false - - OpenEMS Alert - Edge is offline + OpenEMS Alert - Edge is in fault @@ -86,7 +84,7 @@ - -
+ +
@@ -119,54 +117,35 @@ - - - @@ -178,25 +157,28 @@ - - - - + + - - + + +
-

+

-
-
Dear - - , - - - Ms/Mr , - - - Customer, - -
-
- Your OpenEMS Edge with number is in - - - - - - - - + + + , - since: + Ms/Mr , + Customer,
-
- - - () +
Your OpenEMS Edge with number is in a continuous + + + + - (UTC) - + UNKNOWN + state!
- Edge-Version + OpenEMS-Version - + + + + UNKNOWN
- Type - - - - +
+ Type + + + + + -
@@ -207,7 +189,7 @@ -
OpenEMS Association e.V.
+
OpenEMS Association e.V.
@@ -236,12 +218,33 @@ -
Wenn Sie keine E-Mail Benachrichtigung mehr wünschen, können Sie die Funktion hier deaktivieren.
+
If you do no longer wish to receive email notifications, you can disable the feature hier .
-
Dies ist eine automatisch generierte Nachricht. Bitte antworten Sie nicht auf diese Nachricht!
+
This is an automatically generated message. Please do not reply to this message!
+ + + + + + + + + + +
+ OpenEMS Logo +
+ + + + +

+

+ diff --git a/openems/mail/openems/user_registration.xml b/openems/mail/openems/user_registration.xml index dff05cf..ee01934 100644 --- a/openems/mail/openems/user_registration.xml +++ b/openems/mail/openems/user_registration.xml @@ -1,198 +1,197 @@ - - - - - E-Mail Kunden Registrierung - - ]]> - {{object.id}} - Registrierung erfolgreich - false - - - - - - Registrierung erfolgreich - - - - - - - - - - - - - - - -
- - - - - - -
- -
- - - - - - -
- -
- - - - - - - - - - - - - - - - - - - - - - - - -
-

-

- -
-
Guten Tag - , -
-
-
Ihr Zugang zu OpenEMS UI wurde erstellt.
-
-
Sie können sich auf OpenEMS UI einloggen, um auf das Online-Monitoring zuzugreifen.
-
- - - - - - - - - - - - -
Ihre Zugangsdaten:
E-Mail - -
Passwort - -
-
-
Best Regards
-
-
OpenEMS Association e.V.
-
-
- -
-
- -
-
- - - - ]]> -
-
-
-
+ + + + + E-Mail Kunden Registrierung + + ]]> + {{object.id}} + Registrierung erfolgreich + false + + + + + Registrierung erfolgreich + + + + + + + + + + + + + + + +
+ + + + + + +
+ +
+ + + + + + +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + +
+

+

+ +
+
Guten Tag + , +
+
+
Ihr Zugang zu OpenEMS UI wurde erstellt.
+
+
Sie können sich auf OpenEMS UI einloggen, um auf das Online-Monitoring zuzugreifen.
+
+ + + + + + + + + + + + +
Ihre Zugangsdaten:
E-Mail + +
Passwort + +
+
+
Best Regards
+
+
OpenEMS Association e.V.
+
+
+ +
+
+ +
+
+ + + + ]]> +
+
+
+
diff --git a/openems/static/mail/OpenEMS-Logo.jpg b/openems/static/mail/OpenEMS-Logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..13ae0fba6120a7472998decceef335398be01035 GIT binary patch literal 152320 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

`b%zWJVoybJJC+al7(vmUoDSw-d(zU?;>j| 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 Date: Fri, 12 Jan 2024 10:17:04 +0100 Subject: [PATCH 5/6] remove comments; fix typos; --- openems/controllers/alerting.py | 10 ++-------- openems/mail/openems/alerting_sum_state.xml | 2 +- openems/models/device.py | 2 +- 3 files changed, 4 insertions(+), 10 deletions(-) diff --git a/openems/controllers/alerting.py b/openems/controllers/alerting.py index 08133c0..7a848f2 100644 --- a/openems/controllers/alerting.py +++ b/openems/controllers/alerting.py @@ -37,9 +37,8 @@ def sum_state_alerting(self, sentAt: str, params: list[dict]): if len(msgs) == 0: self.__logger.error("Scheduled SumState-Alerting-Mail without any recipients!!!") + template = request.env.ref('openems.alerting_sum_state') for msg in msgs: - template = request.env.ref('openems.alerting_sum_state') - #template = self.__get_template(msg.edgeId) self.__send_mails(template, msg, update_func) return {} @@ -49,8 +48,8 @@ def offline_alerting(self, sentAt: str, params: list[dict]): msgs = self.__get_offline_params(sentAt, params) update_func = lambda role, at: { role.write({"offline_last_notification": at})} + template = request.env.ref("openems.alerting_offline") for msg in msgs: - template = self.__get_template(msg.edgeId) self.__send_mails(template, msg, update_func) return {} @@ -74,10 +73,6 @@ def __get_sum_state_params(self, sentAt, params) -> list[SumStateMessage]: msgs.append(SumStateMessage(sent, edgeId, recipients, state)); return msgs - def __get_template(self, device_id): - template = request.env.ref("openems.alerting_offline") - return template - def __send_mails(self, template, msg: Message, update_func): roles = http.request.env['openems.alerting'].search( [('user_id','in',msg.userIds),('device_id','=',msg.edgeId)] @@ -87,6 +82,5 @@ def __send_mails(self, template, msg: Message, update_func): try: template.send_mail(res_id=role.id, force_send=True) update_func(role, msg.sentAt) - #role.write({"offline_last_notification": msg.sentAt}) except Exception as err: self.__logger.error("[" + str(err) + "] Unable to send template[" + str(template.name) +"] to edgeUser[user=" + str(role.id) + ", edge=" + str(msg.edgeId)+ "]") \ No newline at end of file diff --git a/openems/mail/openems/alerting_sum_state.xml b/openems/mail/openems/alerting_sum_state.xml index 7125bde..cd1303e 100644 --- a/openems/mail/openems/alerting_sum_state.xml +++ b/openems/mail/openems/alerting_sum_state.xml @@ -144,7 +144,7 @@ - UNKNOWN + UNKNOWN state!

diff --git a/openems/models/device.py b/openems/models/device.py index 23c21a0..8924c86 100644 --- a/openems/models/device.py +++ b/openems/models/device.py @@ -214,7 +214,7 @@ def _compute_user_login(self): for rec in self: rec.user_login = rec.user_id.login; - @api.depends("user_id") + @api.depends("user_id", "device_id") def _compute_user_role(self): for rec in self: user_role: DeviceUserRole = rec.user_id.device_role_ids.search([('device_id','=',rec.device_id.id)]) From a554a0754302b9533a3c43d961857c1f785034e6 Mon Sep 17 00:00:00 2001 From: Kai Jeschek Date: Fri, 12 Jan 2024 10:18:36 +0100 Subject: [PATCH 6/6] fix typos --- openems/mail/openems/alerting_offline.xml | 2 +- openems/mail/openems/alerting_sum_state.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/openems/mail/openems/alerting_offline.xml b/openems/mail/openems/alerting_offline.xml index 67bdc39..2d2a38d 100644 --- a/openems/mail/openems/alerting_offline.xml +++ b/openems/mail/openems/alerting_offline.xml @@ -225,7 +225,7 @@ -
If you do no longer wish to receive email notifications, you can disable the feature hier .
+
If you do no longer wish to receive email notifications, you can disable the feature here .
diff --git a/openems/mail/openems/alerting_sum_state.xml b/openems/mail/openems/alerting_sum_state.xml index cd1303e..5ac49f6 100644 --- a/openems/mail/openems/alerting_sum_state.xml +++ b/openems/mail/openems/alerting_sum_state.xml @@ -218,7 +218,7 @@ -
If you do no longer wish to receive email notifications, you can disable the feature hier .
+
If you do no longer wish to receive email notifications, you can disable the feature here .