[TOC]
sais-notify
介绍
SAIS 消息通知服务Python SDK,方便开发者快速集成消息通知服务。
功能
DONE:
- 飞书用户文本通知
- 飞书用户富文本通知
- 飞书用户文本通知
- 飞书用户富文本通知
TODO:
- 邮箱通知
- 短信通知
使用
安装sais-notify
pip install sais-notify -U
使用sais-notify
给飞书用户发送文本消息
from sais.notify import MessageHandler, EnvVarCredentialsProvider, NotifyType
# 需设置环境变量SAIS_NOTIFY_AUTH_TOKEN
credentials_provider = EnvVarCredentialsProvider()
message_handler = MessageHandler(credentials_provider)
message_handler.send_notification(NotifyType.FEISHU_USER_TEXT, to="手机号,多个逗号隔开", message="文本内容")
给飞书用户发送富文本消息
from sais.notify import MessageHandler, EnvVarCredentialsProvider, NotifyType
# 需设置环境变量SAIS_NOTIFY_AUTH_TOKEN
credentials_provider = EnvVarCredentialsProvider()
message_handler = MessageHandler(credentials_provider)
message_handler.send_notification(NotifyType.FEISHU_USER_RICH_TEXT, to="手机号,多个逗号隔开", message='{\"zh_cn\":{\"title\":\"我是一个标题\",\"content\":[[{\"tag\":\"text\",\"text\":\"第一行 :\"},{\"tag\":\"a\",\"href\":\"http://www.feishu.cn\",\"text\":\"超链接\"},{\"tag\":\"at\",\"user_id\":\"ou_1avnmsbv3k45jnk34j5\",\"user_name\":\"tom\"}],[{\"tag\":\"img\",\"image_key\":\"img_7ea74629-9191-4176-998c-2e603c9c5e8g\"}],[{\"tag\":\"text\",\"text\":\"第二行:\"},{\"tag\":\"text\",\"text\":\"文本测试\"}],[{\"tag\":\"img\",\"image_key\":\"img_7ea74629-9191-4176-998c-2e603c9c5e8g\"}]]}}')
给飞书群组发送文本消息
from sais.notify import MessageHandler, EnvVarCredentialsProvider, NotifyType
# 需设置环境变量SAIS_NOTIFY_AUTH_TOKEN
credentials_provider = EnvVarCredentialsProvider()
message_handler = MessageHandler(credentials_provider)
message_handler.send_notification(NotifyType.FEISHU_GROUP_TEXT, to="群组id,多个逗号隔开", message='文本消息')
给飞书群组发送文本消息
from sais.notify import MessageHandler, EnvVarCredentialsProvider, NotifyType
# 需设置环境变量SAIS_NOTIFY_AUTH_TOKEN
credentials_provider = EnvVarCredentialsProvider()
message_handler = MessageHandler(credentials_provider)
message_handler.send_notification(NotifyType.FEISHU_GROUP_MESSAGE_CARD, to="群组id,多个逗号隔开", message='{\"config\":{\"wide_screen_mode\":true},\"elements\":[{\"alt\":{\"content\":\"\",\"tag\":\"plain_text\"},\"img_key\":\"img_7ea74629-9191-4176-998c-2e603c9c5e8g\",\"tag\":\"img\"},{\"tag\":\"div\",\"text\":{\"content\":\"你是否曾因为一本书而产生心灵共振,开始感悟人生?\\n你有哪些想极力推荐给他人的珍藏书单?\\n\\n加入 **4·23 飞书读书节**,分享你的**挚爱书单**及**读书笔记**,**赢取千元读书礼**!\\n\\n📬 填写问卷,晒出你的珍藏好书\\n😍 想知道其他人都推荐了哪些好书?马上[入群围观](https://open.feishu.cn/)\\n📝 用[读书笔记模板](https://open.feishu.cn/)(桌面端打开),记录你的心得体会\\n🙌 更有惊喜特邀嘉宾 4月12日起带你共读\",\"tag\":\"lark_md\"}},{\"actions\":[{\"tag\":\"button\",\"text\":{\"content\":\"立即推荐好书\",\"tag\":\"plain_text\"},\"type\":\"primary\",\"url\":\"https://open.feishu.cn/\"},{\"tag\":\"button\",\"text\":{\"content\":\"查看活动指南\",\"tag\":\"plain_text\"},\"type\":\"default\",\"url\":\"https://open.feishu.cn/\"}],\"tag\":\"action\"}],\"header\":{\"template\":\"turquoise\",\"title\":{\"content\":\"📚晒挚爱好书,赢读书礼金\",\"tag\":\"plain_text\"}}}')
发送邮件
from sais.notify import MessageHandler, EnvVarCredentialsProvider, NotifyType
# 需设置环境变量SAIS_NOTIFY_AUTH_TOKEN
credentials_provider = EnvVarCredentialsProvider()
message_handler = MessageHandler(credentials_provider)
message_handler.send_notification(NotifyType.EMAIL, to="邮箱,多个逗号隔开", message="邮件正文内容", subject="邮件主题")
发送短信
from sais.notify import MessageHandler, EnvVarCredentialsProvider, NotifyType
# 需设置环境变量SAIS_NOTIFY_AUTH_TOKEN
credentials_provider = EnvVarCredentialsProvider()
message_handler = MessageHandler(credentials_provider)
message_handler.send_notification(NotifyType.SMS, to="手机号,多个逗号隔开", message="短信变量参数,类型jsonstring", sign_name="签名", template_code="模板名称")
代码结构
├── README.md
├── pyproject.toml
└── sais
├── __init__.py
└── notify
├── __init__.py
├── auth
│ ├── __init__.py
│ └── auth_info.py
├── clients
│ ├── __init__.py
│ └── notify_client.py
├── config
│ ├── __init__.py
│ ├── const.py
│ └── version.py
├── handler
│ ├── __init__.py
│ └── message_handler.py
├── model
│ ├── __init__.py
│ └── message_model.py
└── types
└── __init__.py
更多
联系我们: SAIS 团队
Metadata
Release files for sais-notify 0.0.14
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| sais_notify-0.0.14.tar.gz | 5.5 kB | Without provenance | Details for sais_notify-0.0.14.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| sais_notify-0.0.14-py3-none-any.whl | Python 3 | none | any | Details for sais_notify-0.0.14-py3-none-any.whl |
Total release size: 14.4 kB
Release files / sais_notify-0.0.14.tar.gz
| Download URL | sais_notify-0.0.14.tar.gz |
|---|---|
| Size | 5.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c12aba2de0442fd5cf7662aefc579d27d0ec54471111c2c4752f8895142bad05
|
|
BLAKE2b-256 checksum How to use checksums |
1bd45faa3742583fd3bbabd7b232b2201c486f79275d30c18c88d28e9addc2a5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.0 CPython/3.10.10
|
Release files / sais_notify-0.0.14-py3-none-any.whl
| Download URL | sais_notify-0.0.14-py3-none-any.whl |
|---|---|
| Size | 8.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
202c2aaac22f9069e8624e146b01b9ab4944f66b4fad1a7adfe0941232475899
|
|
BLAKE2b-256 checksum How to use checksums |
71a442455a333a2cba1c18de6ef762abec7fa0639b91d1dadf5d8add283e34e2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.0 CPython/3.10.10
|
Security for sais-notify 0.0.14
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.