跳转到主要内容

从stdin读取电子邮件并将其转发到URL

项目描述

简介

smtp2zope 是一个脚本,它接受电子邮件作为输入,进行一些转换,然后通过URL提交给后端服务器。传统上,Zope 被期望是接收服务器,因此得名,但它也可以很好地适用于其他服务器。

最初,这里的代码来自 Zope 的 MailBoxer 产品。

用法

安装此包时,会生成一个 smtp2zope 脚本。该脚本从标准输入读取,并期望url和可选的最大字节数作为参数。

smtp2zope URL [MAXBYTES]

URL

使用电子邮件作为POST请求调用此URL。身份验证可以包含在URL中:http://username:password@example.org/some-page

MAXBYTES

可选:只将小于MAXBYTES大小的邮件转发到URL

因此,测试运行可能看起来像这样

cat testmail.txt > /path/to/smtp2zope http://admin:secret@example.org/my-mail-handler

邮件服务器集成

邮件通过邮件服务器接收。因此,当您希望mailme@example.org的邮件由smtp2zope处理并发送到您的web服务器时,您应该在SMTP服务器配置中添加一个别名。可能像这样(具体取决于您使用的邮件服务器,可能会有细微差别)

mailme@example.org "|/path/to/smtp2zope http://admin:secret@example.org/my-mail-handler 1000000"

末尾的数字限制了消息的最大大小;这是可选的,但强烈推荐。

调试

请注意:默认情况下,在Unix系统上输出记录到maillog。查看您的maillog(例如/var/log/mail.log)以调试设置问题。

Buildout

如果您喜欢使用zc.buildout设置项目(我自己就是这样做的),这个简单的片段就足以创建bin/smtp2zope脚本

[script]
recipe = zc.recipe.egg
eggs = smtp2zope

致谢

  • 原始实现:Maik Jablonski

  • 打包:Maurits van Rees

更改日志

1.2 (2012-10-14)

1.1 (2011-05-05)

  • 使用更好的方式确定URL中传递的基本认证信息,以便当URL中其他位置有@符号时,逻辑不会失败。[maurits]

  • 修复了未使用基本认证时出现的“局部变量‘AUTHORIZATION’在赋值前引用”错误(http://user:pw@example.com)。[maurits]

1.0 (2011-05-04)

  • 初始发布

项目详情


下载文件

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

源分发

smtp2zope-1.2.zip (27.2 kB 查看哈希)

上传时间:

由以下机构支持

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