Skip to content
Natsu Houraisan edited this page Mar 16, 2022 · 2 revisions

获取企业微信的账号

这里说的是企业管理员身份,不是普通用户。如果没有就在这里注册一个:https://work.weixin.qq.com/

登录以后点击 应用管理 - 创建应用 ,选择一张图片作为logo,填写名称,可见范围 选择你的企业(根目录),点击创建应用

创建完成之后在 自建 这一栏找到你刚创建的应用,点击 Secret 旁边的 查看,系统将向你的手机企业微信客户端发送一条信息。请牢记你的 AgentIdSecret ,接下来要用到;同时请注意:

千万不要泄露你的 Secret !

千万不要泄露你的 Secret !

千万不要泄露你的 Secret !

然后点击最顶上的 我的企业,找到页面下方的 企业ID,同样需要牢记且不要泄露。

最后点击旁边的 微信插件,在 邀请关注 那里扫描那个二维码。这样你才能在微信里也能收到企业微信的消息。

克隆代码,启动服务

如果你有服务器或者树莓派这样的24小时运行的linux设备(甚至Windows自带的WSL),你可以直接把本项目的代码克隆,然后使用 npm start ;同样可以使用 Github Actions 来自建服务

先将本项目 Fork 一份,在 Actions 这个标签页下可以看到一些workflows,请用那个后缀为 RunOnce 的条目

然后需要到 Settings 选项卡,在 Secrets - Actions 这里填入下面几个个密钥。

名称
WECOM_CORPID 企业ID
WECOM_AGENTID 自建应用的AgentId
WECOM_SECRET 自建应用的Secret

剩下三个是服务所需要的COOKIE,你可以点击网页浏览器左上角的锁头,选择Cookie,在框框里查看,同样需要牢记且不要泄露。一旦泄露了他人就可以通过此登录你的账号并获取相关权限。

名称
BILI_COOKIE 对应SESSDATA项
请按照SESSDATA=XXX(XXX是内容里面的值)填写
WEIBO_COOKIE 对应SUB项
请按照SUB=XXX(XXX是内容里面的值)填写
DOUYIN_COOKIE 对应__ac_nonce和__ac_signature两项
请按照__ac_nonce=XXX; __ac_signature=YYY;(XXX,YYY分别是两项内容里面的值,注意带上半角分号)填写

完成后,请回到 Action 选项卡,点一下Run workflow,并点击进黄色小圆点的项目,看一看Start Service 这一项的日志。如果都是no update 或 not started yet应该就没啥问题了。

定时启动任务

Github的workflow定时配置并不代表按时启动。这里我们需要用到腾讯的SCF脚本。如果你没用过可以先去注册个账号:https://cloud.tencent.com/product/scf

然后去我的另一个项目:https://github.com/nenekodev/Github-Actions-Trigger,在最右侧找到 release ,把最新的 UPLOAD-IT.zip 文件下载下来。

按照以下步骤:

注册并登录腾讯云 SCF 控制台,点击左边的 函数服务 ,点击 新建 - 从头开始

运行环境设置为 Python 3.6 ,可以在 函数名称 那里随便起个名。

选择 提交方法本地上传 zip 包 ,点击 上传

点击 高级配置 , 在 环境变量 里配置:

名称
GITHUB_USER 你的 Github 用户名
(不是昵称,是地址栏显示的github.com/后面那个)
GITHUB_REPO 仓库名称
(应该是 a-soul-wecom-notifier)
GITHUB_BRANCH 看仓库左上角树杈标记旁边的名字,应该是 main
GITHUB_ACTION_FILE  应该是A-SOUL_BOT-RunOnce.yml
GITHUB_TOKEN 这里创建
名字一定是GITHUB_TOKEN,Expiration选择no Expiration。然后勾选repo, workflow, admin:repo_hook

初始化超时时间执行超时时间 拉到最大,然后点击触发器配置自定义创建,可以选择一个触发周期,或者选 自定义触发周期 然后直接写Cron 表达式。我推荐2min一次,你可以填写这个(每两分钟的第37秒触发一次):37 0-59/2 * * * * *

至此你就可以享受这个推送机器人了。


https://www.bilibili.com/read/cv15673644

Clone this wiki locally