web-dev-qa-db-ja.com

コマンドラインを使用してMailmanのリストメンバーのモデレートフラグを変更する

Mailmanを使用して、コマンドラインからリストのメンバーのモデレートフラグを変更する方法はありますか?

1

pythonスクリプトが http://www.msapiro.net/scripts/set_mod.py にあり、必要なことを実行できる可能性があります。私は知りませんこれを行うために実際にmailmanに付属しているものはすべて。

0
Robert Novak

モデレートビットをオンにします。

/usr/lib/mailman/bin/withlist -r mod.set $currentlist $user 1

モデレートビットをオフにします。

/usr/lib/mailman/bin/withlist -r mod.set $currentlist $user 0

上記の2つのステートメントで、$currentlistをリスト名に置き換え、$userをメンバーのサブスクライブアドレスに置き換えます。

「mod.py」の使用:

#! /usr/bin/python
# mod.py

from Mailman import mm_cfg
import sys

def mod(list):
    for member in list.getMembers():
        if list.getMemberOption(member, mm_cfg.Moderate):
            print member, "is moderated"

def set(list, member, value):
    value = not not (int(value))
    if list.isMember(member):
        list.Lock()
        list.setMemberOption(member, mm_cfg.Moderate, value)
        print "%s's moderated flag set to %d" % (member, value)
        list.Save()
        list.Unlock()
    else:
        print member, "not a member"
3