跳转到主要内容

为iCalendar文件中的事件发送电子邮件提醒

项目描述

源代码:

https://github.com/willkg/phil

问题跟踪:

https://github.com/willkg/phil/issues

许可证:

GPLv3

状态 - 2013年2月9日

该项目目前没有在积极开发。如果您有更改,请提交拉取请求(最好附上测试),我会将其合并。

摘要

phil是一个命令行实用程序,用于发送关于由iCalendar文件定义的会议的提醒电子邮件。

它解决了这个用例

Will在一个每周六都有会议的项目上工作。Will想要一种自动化的方式,向每个人发送会议提醒电子邮件,包括会议的时间、如何参加以及会议的笔记。

Will安装并配置phil,在周六会议之前向项目列表发送电子邮件。Will设置cron作业,每天早上启动phil,检查需要发送的提醒并发送它们。

功能

  • 具有config.ini格式的配置文件

  • 解析iCalendar文件,计算下一个有效的会议日期,并在会议前x天发送提醒电子邮件

  • 尽量避免对同一会议重复提醒!

  • 具有允许您在不实际发送电子邮件的情况下测试事物的--debug模式

  • 具有一个 --quiet 模式,该模式只会打印错误

  • 正确地将错误打印到stderr,并将输出打印到stdout;如果失败,则返回错误代码1

  • 使用 next6 命令显示事件的下一个6个日期

历史

我负责多个项目,其中一些项目定期召开会议。有一天我意识到,如果有一种自动化的方式向所有人发送会议提醒,并包含指定会议时间、如何参加会议以及在哪里查找会议详细信息的文本,那将会非常有帮助。

我负责多个项目,为它们想出好名字对我来说是个大问题。我不太记得我使用的库和工具的名称,所以我觉得只要提供足够的文档,允许搜索引擎根据搜索条件找到项目,任意的名称都是可以接受的。鉴于此,我决定以后将所有项目命名为类似phil的名称。

因此phil诞生了。

许可证等

phil 版权(C) 2011, 2012, 2013 Will Kahn-Greene

本程序完全没有任何担保。这是一个免费软件,你可以在某些条件下重新分发它。有关详细信息,请参阅LICENSE中的条款和条件部分。

安装

如果你想要phil的发布版本,请这样做

$ pip install phil

如果你想要phil的最新版本,请这样做

$ git clone git://github.com/willkg/phil.git
$ cd phil
$ python setup.py install

配置

phil需要配置文件。要生成一个示例配置文件,请以这种方式运行phil

phil-cmd createfile <configfile>

配置文件是自文档化的。查看它来配置phil。

运行

要获取子命令、参数和其他帮助信息,请这样做

phil-cmd --help

要发送会议提醒邮件,请这样做

phil-cmd run <configfile>

这将以给定的配置文件运行phil。

phil有一个静音模式,只打印错误

phil-cmd --quiet ...

phil有一个调试模式,除了实际发送电子邮件外,做所有事情

phil-cmd --debug ...

phil会跟踪它提醒你关于的最后一个会议的日期/时间。如果你运行phil两次,它只会提醒你一次会议。

测试

phil附带单元测试。单元测试使用nose执行,并使用fudge作为模拟框架。如果你还没有安装nose和fudge,请使用以下方式安装它们

pip install nose fudge

我还喜欢使用nose-progressive,因为它很棒。要安装它

pip install nose-progressive

要从git克隆或源tarball运行单元测试,请在项目目录中这样做

nosetests

使用nose-progressive和fail-fast

nosetests -x --with-progressive

我发现的有用的资源

项目详情


下载文件

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

源分发

phil-1.3.tar.gz (24.9 kB 查看哈希值)

上传于 源代码

由以下支持