component/opcua-server: notify erp5 if read
Notifying erp5 when a read occurs isn't as straightforward as sending a request to erp5 when a data change occurs. I think the reason for this is that OPC UA has the concept of subscriptions [1]. But as far as I understand it this concept only applies to important events as data changes or OPCUA Events, but not to simple "read" or "browse" requests. So to catch those requests and forward them to ERP5 we actually need to adjust asyncua. In this patch I picked a dirty-adhoc-monkey-patching approach, a cleaner version may include defining a new custom ERP5Server, which inherits from asyncua base Server class. Because (AFAIK) it's not possible to track the read requests with the subscription method, we may want to unify our forwarding system by dropping the subscription approach and move everything to a patched InternalSession. [1] https://documentation.unified-automation.com/uasdkhp/1.4.1/html/_l2_ua_subscription.html
Showing
Please register or sign in to comment