SIENTIAPDE-1110

Enhance OpcRepository write_data method to include SourceTimestamp using DateTime, improving data accuracy and traceability.
This commit is contained in:
vitor-aignosi
2025-06-27 17:03:59 -03:00
parent 80ad2d54ad
commit d2e4561dfd

View File

@@ -4,7 +4,7 @@ from pathlib import Path
from typing import Any
from asyncua.sync import Client
from asyncua.crypto.security_policies import SecurityPolicyBasic256
from asyncua.ua import DataValue, Variant, VariantType
from asyncua.ua import DataValue, Variant, VariantType, DateTime
from regex import F
from sientia_do.notifications.handlers import NotificationHandler
from sientia_do.notifications.models import NotificationLevel
@@ -239,7 +239,9 @@ class OpcRepository():
logger.custom_info(
f'Writing {data} - {type(data)} to {node}', metadata.get('schedule_name', 'N/A'))
ua_data = DataValue(
Variant(data, data_type_map[data_type]['opc_type']))
Variant(data, data_type_map[data_type]['opc_type']),
SourceTimestamp=DateTime(datetime.now())
)
try:
node.write_value(ua_data)