查看更新日志了解最近的变更
你有一个应用或服务,想让用户能够使用他们选择的提供商发送通知吗?正在编写脚本,想根据其输出接收通知吗?你不需要自己实现解决方案,也不需要使用单独的提供商库。这里是所有通知提供商的一站式商店,提供统一且简单的接口。
支持的提供商
Pushover、SimplePush、Slack、Gmail、电子邮件(SMTP)、Telegram、Gitter、Pushbullet、Join、Zulip、Twilio、Pagerduty、Mailgun、PopcornNotify、StatusPage.io、iCloud、VictorOps (Splunk)、Notify
优势
- 将宝贵的时间花在你自己的代码库上,而不是追踪第三方提供商的API。这就是我们存在的意义!
- 通过一组最小的知名且稳定的依赖项(requests、jsonschema和click),你比安装第三方SDK要好得多。
- 统一的接口意味着你已经支持任何新增的提供商,无需额外工作!
- 全面的测试意味着对任何破坏性API更改的保护。我们确保你的代码和通知始终能够送达!
安装
通过pip:
$ pip install notifiers
通过homebrew:
$ brew install notifiers
或者Dockerhub:
$ docker pull liiight/notifiers
基本用法
>>> from notifiers import get_notifier
>>> p = get_notifier('pushover')
>>> p.required
{'required': ['user', 'message', 'token']}
>>> p.notify(user='foo', token='bar', message='test')
<NotificationResponse,provider=Pushover,status=Success>
或者:
>>> from notifiers import notify
>>> notify('pushover', user='foo', token='bar', message='test')
<NotificationResponse,provider=Pushover,status=Success>
从命令行使用
$ notifiers pushover notify --user foo --token baz "这太简单了!"
作为日志记录器
直接添加到你现有的标准库日志记录中:
>>> import logging
>>> from notifiers.logging import NotificationHandler
>>> log = logging.getLogger(__name__)
>>> defaults = {
'token': 'foo',
'user': 'bar'
}
>>> hdlr = NotificationHandler('pushover', defaults=defaults)
>>> hdlr.setLevel(logging.ERROR)
>>> log.addHandler(hdlr)
>>> log.error('就这样,你可以收到所有错误的通知!')
提及
- 在Python Bytes播客中被提及
路线图
- 更多提供商!
- 通过
extra
依赖项提供低级提供商(Amazon SNS、Google FCM、操作系统Toast消息)
更多信息请参阅文档
捐赠
如果你喜欢这个项目并想给我买杯咖啡,请点击上方的捐赠按钮或点击这个链接 ☕
行为准则
所有在Notifiers项目的代码库、问题追踪器和聊天室中互动的人都应遵循PyPA行为准则。