Office365 E5申请好之后,如何稳定续期是个问题,前面的文章提到用oneindex来实现,但是有也有 很多人说oneindex效果已经很不好了。所以今天这篇文章试试用E5SubBot来实现续期。
续期是个玄学问题,但也可能还是不成功,但是不失为一个好方法。至于Office365 E5 如何申请可以看这篇文章:
1、简介
E5SubBot 是 Office365 E5 自动续订机器人,通过调用Outlook API尝试自动续订E5订阅(每三小时调用一次outlook api) ,管理的简易账户系统,方便的授权方式!程序基于Golang + MySQL。
地址:https://github.com/iyear/E5SubBot
DEMO: https://t.me/E5Sub_bot
2、特性
- 自动续订E5订阅(可自定义的调用频率)
- 可管理的简易账户系统
- 完善的任务执行反馈
- 极为方便的授权方式
3、原理
E5订阅为开发者订阅,只要调用相关API就有可能续期 调用 Outlook ReadMail API 实现玄学的续订方式,不保证续订效果。
4、使用方法
你需要富强来打开telegram Bot了,地址就是那个第一条中的demo,这个就不多说了,不会的可以搜索。
4.1 在机器人对话框输入 /bind
4.2 注册应用,使用E5主账号或同域账号登录,跳转页面获得client_secret。点击回到快速启动,获得client_id
这就和安装oneindex差不多了。
4.3 复制client_secret和client_id,以 client_id client_secret格式回复
4.4 获得授权链接,使用E5主账号或同域账号登录
4.5 授权后会跳转至http://localhost/e5sub……
跳转后的样子看图:
4.6 复制整个浏览框内容,在机器人对话框回复 链接+空格+别名(用于管理账户)
4.7 预览整个过程
丢一张图,看下在整个过程。
4.8 查看信息
在bot中输入命令 /my 可以看到反馈。
5、自行部署
以上是利用作者自己搭建的bot来部署自动续订,我们也可以自己搭建,利用宝塔面板还是不难的。而且作者提供了docker版本的安装,更是简化了过程,下面来简单说说。
5.1 docker环境
宝塔面板安装好docker管理器,安装好docker-compose,具体如何安装可以看这篇教程,里面有详细介绍。
5.2 docker部署
使用如下命令开始部署:
mkdir ./e5bot && wget --no-check-certificate -O ./e5bot/config.yml https://raw.githubusercontent.com/iyear/E5SubBot/master/config.yml.example vi ./e5bot/config.yml wget --no-check-certificate https://raw.githubusercontent.com/iyear/E5SubBot/master/docker-compose.yml docker-compose up -d
如果第一次失败,可以使用 docker-compose restart
重启一次。
5.3 二进制文件
上面的docker部署好之后,在Releases页面下载对应系统的二进制文件,上传至服务器,
Windows: 在cmd中启动 E5SubBot.exe
Linux使用如下命令执行文件:
screen -S e5sub chmod 773 E5SubBot ./E5SubBot (Ctrl A+D)
如果提示screen: command not found 命令不存在,可以执行:yum install screen
或 apt-get install screen
安装。
5.4 部署配置
docker安装是自动配置好config.yml
文件的,编码为UTF-8。配置模板的说明如下:
#bindmax,notice,admin,errlimit可热更新,直接更新config.yml保存即可 #更换为自己的BotToken bot_token: xxxxx #不需要socks5代理删去即可 socks5: 127.0.0.1:1080 #公告,合并至/help notice: "第一行\n第二行" #管理员tgid,前往https://t.me/userinfobot获取,用,隔开 #管理员权限: 手动调用任务,获得任务总反馈 admin: 66666,77777,88888 #任务最大出错次数,满后自动解绑账户并发送通知,无限次数将值改为负数(-1)即可 #以ms账户为单位,不会解绑所有账户(只解绑错误账户) #主要为了减少资源浪费.bot重启后会清零所有错误次数 errlimit: 5 #API调用频率,使用cron表达式 cron: "1 */3 * * *" #最大可绑定数 bindmax: 3 #mysql配置,请提前创建数据库 mysql: host: 127.0.0.1 port: 3306 user: e5sub password: e5sub database: e5sub
注意:docker里面的mysql信息可以不用修改。
5.5 命令
/my 查看已绑定账户信息 /bind 绑定新账户 /unbind 解绑账户 /export 导出账户信息(JSON格式) /help 帮助 /task 手动执行一次任务(管理员) /log 获取最近日志文件(管理员)
6、最后
如果不用docker安装,你还需要安装go语言环境,总的来说自己折腾还是有点门槛的,建议用作者的bot来续订。
续订的效果是个很玄学的问题,建议,在安装oneindex来保证下使用的频率。
这只是一种续订的方法,但是不敢保证效果,你只能试试看。