Team, I have a question.
I have a process where the user will send a PDF file via email.
The bot should trigger on an event basis, and each PDF needs to be converted into TIFF format.
I am planning to implement this using the REFramework with queues.
Should I develop separate code for a Dispatcher bot and a Performer bot?
After the Dispatcher bot adds the items to the queue, the Performer bot should process them and send the converted TIFF file back to the user via email
Yes, develop separate Dispatcher and Performer bots; the Dispatcher will add PDF files to the queue, and the Performer will process each queue item to convert PDFs to TIFFs and send them via email. This separation aligns with best practices for scalability, maintainability, and clear workload distribution.
Integration Services won’t help you to download the pdf, it will just trigger the bot.
If you want to proceess pdf files individually, then I would suggest to build a dispatcher which will download the pdf and add their path to queue for further processing and get it triggered with integration Services.
Thereis a feature request already in place to have add queue item when an integration call is made but not implemented yet so we might need to use a dispatcher if you want to go with ref and transaction basis
Another way generally its advised to create a linear process for this case to convert and let the integration call decide how many processes will be called
I would say to not make things complicated its betterwe go with the second approach where the process will contain only download and conversion and whenever the email arrives the trigger would start the process..as ots a small task it should complete immediately as well
REF can be converted to work as a linear process as well
If. You use dispatcher also in queue you can add message id as well and performer only we can download file usingn message id and only that resides in queueu
Performer bot triggers automatically when a new queue item is added by the dispatcher in Orchestrator. Using Queue-based triggers which recommended for your case for efficient processing.
The bot can also be scheduled to check for new items at set intervals.
Manual trigger is possible via Orchestrator if needed.