Skip to content

Python消息推送集成SDK,统一主流平台接口。配置文件独立,无需改动现有项目。仅需将本仓库的plugin目录以及json配置文件放入你的项目目录→编辑json配置→在需要接收消息的位置调用函数NotifyWind()→传入标题和消息内容即可将任意消息推送到你手机上。消息接收平台已支持: pushplus(微信)、ntfy(APP)、Gotify(APP),再不用去看繁杂的任务执行日志。

License

Notifications You must be signed in to change notification settings

4444TENSEI/NotifyWind

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Logo

NotifyWind

Python统一消息推送服务集成工具,皆在便捷集成第三方/开源自部署消息推送服务。例如你将自己的Python脚本集成本项目SDK,定时运行服务(器)监控、定时查成绩、定时签到、定时任务后,将运行状态直接发送微信or系统通知到你的手机上查看。

简介

本SDK现已集成4个主流的消息服务(微信公众号pushplus、企业微信机器人、Gotify、ntfy)接口,配置简易、本体轻量,无需通过pip安装,只需clone本仓库至您的项目根目录下,修改根目录的config.NotifyWind.json配置文件为您的推送服务环境变量,引入推送函数即可一次性推送消息至多平台。

应用实例

目前支持的推送服务:

  1. 微信公众号(每日免费200次调用次数):pushplus
  2. 自部署服务(无调用限制,通过各自APP接收通知):ntfygotify

华为云函数+pushplus微信推送两家服务的免费额度非常够用,现在只需在你的Python定时任务中集成这个项目,部署到云函数上,配置定时运行,即可被动等待运行状态推送到手机上,个人用户只需申请一个pushplus账号,一小会就注册好了。

基础调用:

from plugin.NotifyWind import NotifyWind

title = "自定义消息标题"
message = "自定义消息内容"

NotifyWind(title=title, message=message)

环境变量/配置文件

支持同时推送到多平台,下方示例中仅使用pushplus,实际还有ntfy和gotify的配置项,参考本仓库根目录下的config.NotifyWind.json.example

更推荐使用环境变量方式,而不是写在实际配置文件中(开发环境还是需要使用本地json文件,自行去除项目根目录的config.NotifyWind.json.example.example后缀即可,可自行删除不需要的推送服务键值对,此处debug控制调试语句不要删除)。

{
    "pushplus": {
        "token": "xxxxxxxxxxxxxxxxxxxx"
    },
    "ntfy": {
        "server_url": "https://xxxxxx.com",
        "token": "xxxxxxxxxxxxxxxxxxxx",
        "priority": 4
    },
    "gotify": {
        "server_url": "https://xxxxxx.com/message",
        "token": "xxxxxxxxxxxxxxxxxxxx",
        "priority": 8
    },
    "wechat": {
        "server_url": "https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=xxxxxx"
    },
    "debug": true
}

免费部署到华为云函数

此时此刻,你完全可以在仅仅修改配置文件的情况下直接进行部署了(除了pushplus实名需要一元钱),下方是针对未使用过华为云函数的用户所写的示例,老玩家也许不需要看了(提醒老玩家:环境变量键名为NOTIFYWIND)。

图文教程

  1. 拉取项目源码或者是直接点击前往下载,找到Source code(zip)字样,下载最新版源码ZIP压缩包,用于上传到华为云函数
  2. 查看图文部署教程华为云函数部署Python定时任务
  3. ※ 需要在环境变量中配置NOTIFYWIND就是下方json配置文件中的内容,关键部位自行修改

获取TOKEN

  • 获取pushplus的token:

前往官网:pushplus官网。注册、绑定微信公众号、实名,短短几分钟即可获取到token。

  • 获取gotify的token:

什么?既然你都会部署了,在右上角APPS里面点CREATE APPLICATION创建一个不就出来了。

  • 获取ntfy的token:

一般你部署下来是不需要的,如不需要可以在配置文件json中删掉这组键值对。

如果你真的在自己在部署时设定了角色权限,那么在你的服务器上面运行

  • 如果你没有创建管理员,那么创建
ntfy user add --role=admin Admin123
  • 如果你没有生成token,那么生成(这里是100年有效期...)
ntfy token add --expires=36500d --label="long-term-access" Admin123

About

Python消息推送集成SDK,统一主流平台接口。配置文件独立,无需改动现有项目。仅需将本仓库的plugin目录以及json配置文件放入你的项目目录→编辑json配置→在需要接收消息的位置调用函数NotifyWind()→传入标题和消息内容即可将任意消息推送到你手机上。消息接收平台已支持: pushplus(微信)、ntfy(APP)、Gotify(APP),再不用去看繁杂的任务执行日志。

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages