So this would be a plc4x subscription listener not something polling? I don’t think that is a bad idea overall, as long as it is true Unsolicited / subscription / Exception based processing and not polling in a background thread.
On May 3, 2023 at 4:36:03 AM, Unai Leria ([email protected]) wrote: Hi Otto! The idea was to use the processor to support plc4x subscriptions. Maybe the "listener" name was not the most appropriate one but I was trying to follow the NiFi naming convention. Sorry for the misunderstanding Unai ----- Mensaje original ----- De: "Otto Fowler" <[email protected]> Para: "dev" <[email protected]>, "unai leria" <[email protected]> Enviados: Miércoles, 3 de Mayo 2023 3:53:17 Asunto: Re: [Opinion] NiFi integration Listener On May 2, 2023 at 9:52:08 PM, Otto Fowler ([email protected]) wrote: Hi Unai! So, this listener would listen for exception based or unsolicited messages? If it is just polling on a background thread, I don’t think how you want to do something in nifi, and we already have “polling” processors. On May 2, 2023 at 11:09:33 AM, Unai Leria ([email protected]) wrote: Hi br/> < I have been taking a look into the possibility of adding a PLC4x Listener to the NiFi integration. br/> < Under my research, and following how most of the ListenXXX processors in the standard-bundle of NiFi are, a good solution would be: * A processor that starts a thread when it is scheduled. * That thread connects to the plc and appends the messages received into a queue. br/> * The processor reads the messages from thiis queue only running when not empty. br/> < In particular ListenTCP and ListenUDP would be the closest ones to the implementation I describe. br/> < In order to account for inevitable disconnections I suggest including an additional queue prior to the queue that connects to the processor. Its function would be to check if the time to the last event is greater than x amount and reconnect in that case. br/> < As a proof of concept I already have a working version on https://github.com/zylklab/plc4x/tree/feature/nifi-integration-record-listener. br/> < I would appreciate your opinion on this feature. br/>If you like it I can create a PR. br/> < Thanks you for your time! br/> < Unai Lería br/>
