feat(mesage-pickup): option for awaiting completion #1755
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Add a blocking mode for
MessagePickupApi.pickupMessages()
, where the agent will wait until all messages have been effectively retrieved and therefore the message pickup process is completed.This tries to solve two main situations:
MediatorPickupStrategy.PickUpV2LiveMode
. This allows supporting the case where the mediator does not supportlive-delivery-change
message (which is the case of AFJ <= 0.4.2 and AFAIK ACA-Py's Pick-up v2 plug-in). In such case, mediator will send a problem report that will be logged in the recipient but should not prevent the pick-up flow from being startedI did not take too much effort on the tests yet as I see there are some improvements in #1754 so maybe I can incorporate them once it's reviewed and merged.