In order to manually acknowledge received messages messenger requires you to:
1. set "incoming_window" > 0, otherwise messenger auto-settles all messages.
2. set "snd_settled_mode" to SND_UNSETTLED so that the remote end does not pre-settle messages.
However the python binding (and I think all the bindings) for messenger do not allow you to call pn_messenger_set_snd_settled_mode, which defaults to SND_SETTLED. Thus it is impossible to manually accept messages because either (with incoming_window==0) messenger auto-settles them or (with incoming_window > 0) messenger's subscribe requests SND_SETTLED on the incoming link so the other end sends pre-settled messages.