On 10/3/24 01:15, IEM Network Operation Center (IOhannes m zmölnig) wrote:
i'm running a mailman-3.3.8 instance, and would like to reset the bounce-score for a (number of) user(s). i searched the internet and this list's archives, but haven't found anything useful so far.
due to a misconfiguration of our universities reverse DNS lookup, the bounce score of some users has rocketed in the last days - some users have already been unsubscribed because of that.
could anybody please share how i can reset the bounce score?
First of all, there are 3 categories of affected list members - those who are already unsubscribed, those who are still members but have delivery disabled by bounce, and those with delivery enabled but with bounce score > 0.
For those that have been unsubscribed, you just have to re-subscribe them.
For those that have delivery enabled but a non-zero bounce score, you
may not need to do anything because they are presumably not currently
bouncing so eventually the old bounce info will become stale and be
ignored, but to guard against spurious bounces that may result in
disabling, e.g.from an over aggressive user's spam filter, you can add
verp_probes: yes
to the [mta]
section of mailman.cfg. The effect of
this is when a members bounce score reaches threshold the score is reset
and a special probe message is sent and delivery is disabled only if the
probe bounces. See
https://docs.mailman3.org/projects/mailman/en/latest/src/mailman/model/docs/...
That leaves those with delivery disabled by bounce. Assuming you want to
enable delivery for all members of all lists with delivery disabled by
bounce, the following mailman shell
interaction will do it.
$ bin/mailman shell
Welcome to the GNU Mailman shell
Use commit() to commit changes.
Use abort() to discard changes since the last commit.
Exit with ctrl+D does an implicit commit() but exit() does not.
>>> for mlist in getUtility(IListManager):
... for member in mlist.members.members:
... if member.delivery_status == DeliveryStatus.by_bounces:
... member.preferences.delivery_status = DeliveryStatus.enabled
...
>>> commit()
>>>
Watch out for a possible wrapped line above.
-- Mark Sapiro <mark@msapiro.net> The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan