Skip to main content

[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)

Source distribution for sais-notify 0.0.14
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)

Table of built distributions (wheels) for sais-notify 0.0.14
File Interpreter ABI Platform Actions
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.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page