跳转到主要内容

Zope MailHost,用于将邮件路由到其他MailHost

项目描述

https://secure.travis-ci.org/collective/collective.multimail.png

简介

允许您使用多个邮件服务器。电子邮件将通过规则过滤,确定将特定电子邮件发送到哪个邮件服务器。每个规则都可以将正则表达式应用于“收件人”、“发件人”和“主题”等电子邮件标题。可以配置脚本或视图以替换邮件服务器,从而允许自定义行为。

潜在用途包括

  • 根据发件人使用不同的SMTP服务器;

  • 将特殊电子邮件地址扩展为多个发送调用;

  • 通过外部API(如Twitter)发送;

  • 添加额外的标题或修改标准Plone电子邮件的文本。

例如,如果您有一个规则链

- header-match: {to: 'allsubscribers@notarealdomain'}
  action: 'send and stop'
  mailhost: '/sendtoall'

# Catch-all rule, uses the patched MailHost object.
- action: 'send and stop'
  mailhost: 'default'

并且您有一个Python脚本 sendtoall

def sendtoall(messageText, mto=None, mfrom=None, subject=None, encode=None, immediate=False, charset='utf8', msg_type=None):
    for email in context.getSubscribers():
        context.MailHost.send(messageText, email, mfrom, subject, encode, immediate, charset, msg_type)

您可以使用电子邮件地址 allsubscribers@notarealdomain 在内容规则或Plone的其他位置发送电子邮件到订阅者数据库。

详细信息

您可以通过通用设置或添加到ZMI来安装。一旦MultiMailHost对象放置在正常MailHost对象相同的文件夹中,对MailHost的monkeypatch将允许MultiMail处理所有电子邮件发送。

规则定义

规则链是一个规则定义的YAML列表。规则定义可以包含

header-match

包含“to”,“from”等头部的正则表达式字典。

action

可以是“发送并继续”,“发送并停止”或“停止”

mailhost

一个可遍历的路径到一个IMailHost对象或可调用对象。可调用对象需要支持(messageText,email,mfrom,subject,encode,immediate,charset,msg_type)参数。路径相对于MultiMailHost,以/开始的路径从Zope根开始。

规则按从上到下的顺序评估。

规则通过ZMI设置。

default是一个特殊的邮件主机,它使用未经过滤的原始邮件主机对象。如果您想重新发送电子邮件并对其进行过滤,请使用/MailHost

待办事项

  • [ ] 使用PloneFormGen进行测试

  • [ ] 处理发送时作为文本包括头部(如PFG)的匹配

  • [ ] 具有禁用monkeypatch的能力,因此可以独立使用

  • [ ] 遍历到脚本的安全问题

贡献者

  • Adam Terrey,原作者

  • Dylan Jay

  • Ivan Teoh

变更日志

1.0a6 (2014-01-17)

  • 切换到monkey patching以解决被覆盖的问题(djay)

  • 允许使用常规的视图Python脚本。(djay)

  • 修复从PloneFormGen或通过acquisition调用时的问题(ivanteoh)

  • 添加匹配规则的测试(ivanteoh)

1.0a4 (2013-05-29)

  • 首次发布(aterrey)

1.0a1 (未发布)

  • 初始版本(aterrey)

项目详情


下载文件

下载您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分布

collective.multimail-1.0a6.tar.gz (25.7 kB 查看哈希值)

上传时间

支持者

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面