splattner/mailmanapi

一个简单的API,用于操作Mailman 2.x邮件列表

1.2.0 2018-08-29 18:40 UTC

README

一个简单的PHP API,用于操作Mailman 2.x邮件列表

由于Mailman 2.x似乎没有提供合适的API,此Mailman API提供了一些基本功能以操作Mailman。请注意,该库仅封装了Mailman API网站的HTML表单。它解析HTTP响应和HTML页面以获取认证Cookies、CSRF令牌,然后向表单操作URL发送POST请求。

已测试与Mailman 2.1.20版本,不能保证与其他版本兼容。

功能

  • 获取邮件列表的所有成员
  • 将成员添加到邮件列表
  • 从邮件列表中删除成员
  • 更改成员的地址

要求

  • 启用套接字或安装curl扩展
  • PHP 5.3+

安装

composer require splattner/mailmanapi:^1.2

使用方法

您需要Mailman邮件列表的URL,例如 http://{{domain}}/mailman/admin/{{maillistName}} 以及邮件列表的管理密码。

获取所有成员

$mailman = new MailmanAPI($mailManBaseURL,$adminPW);
$allMembers = $mailman->getMemberlist();

添加成员

$mailman = new MailmanAPI($mailManBaseURL,$adminPW);
$mailman->addMembers(["member1@domain.com","member2@domain.com"]);

删除成员

$mailman = new MailmanAPI($mailManBaseURL,$adminPW);
$mailman->removeMembers(["member1@domain.com","member2@domain.com"]);

更改成员

$mailman = new MailmanAPI($mailManBaseURL,$adminPW);
$mailman->changeMember("memberold@domain.com","membernew@domain.com");