Мои скрипты: mailman_debounce.py
Из предыдущего поста можно выявить, что 1084(35%) подписчиков не получают рассылки, ситуацию исправит следующий сценарий:
Результат исполнения:
Technorati Tags: мои+скрипты, python, mailman
#!/usr/bin/env python
"""mailman tools: Unlocks ALL bounced users"""
#mailman_debounce.py
#dron@amerigo 200608021443
#rev. 0.2
import sys
MM_HOME = "/usr/local/mailman"
sys.path.append(MM_HOME + "/scripts") #paths.py
import paths
from Mailman import MailList
from Mailman import MemberAdaptor
ml_name = 'spo' #change or sys.argv[1]
ml = MailList.MailList(name=ml_name, lock=1)
lockedlm = [m for m in ml.members.keys() if ml.getDeliveryStatus(m) == MemberAdaptor.BYBOUNCE]
print "Bounced users found: %d" % len(lockedlm)
for lm in lockedlm:
ml.setDeliveryStatus(lm,MemberAdaptor.ENABLED)
ml.Save() #don't forget
ml.Unlock()
lockedlm = [m for m in ml.members.keys() if ml.getDeliveryStatus(m) == MemberAdaptor.BYBOUNCE]
print "Bounced users found: %d, total: %d, disabled: %d" % (len(lockedlm), len(ml.members.keys()),
len([m for m in ml.members.keys() if ml.getDeliveryStatus(m) != MemberAdaptor.ENABLED]))
Результат исполнения:
$ chmod +x mailman_debounce.py
$ ./mailman_debounce.py
Bounced users found: 1084
Bounced users found: 0, total: 3090, disabled: 0
Technorati Tags: мои+скрипты, python, mailman


Links to this post:
Створити посилання
0 Комментарии:
Дописати коментар
<< Home