微软E5开发者订阅的申请及续期


Office 365 开发版 E5 是为开发人员提供的,微软官方活动,申请Office 365开发者计划,可以获得为期3个月的免费Office 365 E5,并可以无限续期。

申请步骤

注册微软账户(有微软账户的可以跳过)
注册地址:https://signup.live.com/signup

https://account.microsoft.com/profile 完善信息

打开申请地址 https://developer.microsoft.com/zh-cn/microsoft-365/dev-program 点击立即加入。

接着会让你回答几个问题,国家/地区推荐选香港,Onedrive速度会快一些,其余的随便填写即可。

回答完这些问题后,点击设置E5订阅。

填入相应的信息,国家/地区选择香港,域不能重复,密码必须为 8-16 个字符并采用大写和小写字母、数字和以下任何符号:@ # $ % ^ & * - _ ! + = [ ] { } | :
然后点击继续

然后点击发送代码,如果点击无反应需要打开代理,不然会无法发送短信验证码

做完验证即可发送验证码

填入五位数验证码,点击设置

等待大约一分钟,订阅就申请好了

可以到 https://www.office.com/?auth=2 登陆,用户名和密码就是你刚刚设置的

续期步骤

TG机器人续期

你可以使用别人的,用户名:@E5Sub_bot @officeE5_bot

使用方法

在机器人对话框输入 /bind
注册应用,使用E5主账号或同域账号登录,跳转页面获得client_secret。点击回到快速启动,获得client_id
复制client_secret和client_id,以 client_id client_secret格式回复
获得授权链接,使用E5主账号或同域账号登录
授权后会跳转至http://localhost/e5sub…… (会提示网页错误,复制链接即可)
复制整个浏览框内容,在机器人对话框回复 链接+空格+别名(用于管理账户) 例如:http://localhost/e5sub/?code=abcd MyE5,等待机器人绑定后即完成

自行部署

Github项目 https://github.com/iyear/E5SubBot/

Bot创建教程:Google

Docker部署

感谢 @kzw200015 提供Dockerfile以及Docker方面的帮助

第一次启动不行,使用 docker-compose restart重启一次

1
2
3
4
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
二进制文件

Releases页面下载对应系统的二进制文件,上传至服务器

Windows: 启动 E5SubBot.exe

Linux:

1
2
3
4
screen -S e5sub
chmod +x E5SubBot
./E5SubBot
(Ctrl A+D)
编译

下载源码,安装GO环境

1
git clone https://github.com/iyear/E5SubBot.git && cd E5SubBot && go build

e5.qyi.io-E5续订

使用教程

1、注册自己的api key
登录进入 azure ,登录账号使用你的e5账户 ,就是以xxx.onmicrosoft.com开头的的账户。
搜索“应用注册”

现在不能直接搜索到了,目前两种方法可以找到 应用注册

1)请搜索 “Azure Active Directory”,然后在 管理-应用注册 ,

2)或者直接点击直达链接:
https://portal.azure.com/#blade/Microsoft_AAD_IAM/ActiveDirectoryMenuBlade/RegisteredApps

点击 新注册

名称随意取一个,但是最重要的是 “重定向 URI (可选)”,请填写为下列地址,不然程序收不到回调。

https://e5.qyi.io/outlook/auth2/receive

小伙伴们注意了,这里受支持的账户类型 重定向 URI (可选)一定要填对,不然无法授权的哦。

3)点击注册后记录以下信息:
1、应用程序(客户端)ID
2、客户端密码

应用程序(客户端)ID:

创建客户端密码:

最近很多同学反应授权报错 Invalid client secret is provided. 这里请注意了,客户端密码请复制 “值”,不要复制 ID。

保存好以上2个key,一会需要用到。
配置api权限


勾选一下四个选项后,同时点击 代表XX授予管理员同意
PS: 这一步如果用的是子账号创建的api,那么这一项是灰色的,不能点击。需要登录 管理员 账号,再点击 代表XX授予管理员同意

这个时候api的配置就算完成了

2、添加key到自动订阅程序
进入 https://e5.qyi.io/
这里需要github账户登录

点击
图标
登录后进入主页面

点击 新建
名称随意输入,只是个标识而已
描述可空

点击 配置

填入上一步记录的 应用程序(客户端)ID、客户端密码
client_id ->应用程序(客户端)ID
client_secret->客户端密码

点击下一步进行配置调用时间,

说明:单位 秒(最低调用频率为 60 秒,最高为6小时),例如: 30-60,代表在30秒-60秒之间随机调用一次
再点击下一步,到了 授权 ,

此时会跳转到 microsoftonline Auth2.0授权页面,在这里请注意使用同一个域下的空账号(子账号)进行授权。

点击 接受 后,将会跳转回自动订阅程序。

到此时,授权就完成了。

详情见 https://qyi.io/archives/687.html

Github Action 续期

Github:https://github.com/lem0nb/AutoApiP_backup

使用步骤

步骤
准备工具:
E5开发者账号(非个人/私人账号)
rclone软件,下载地址 rclone.org ,(windows 64)
教程图片看不到请科学上网
微软方面的准备工作
第一步,注册应用,获取应用id、secret

1)点击打开仪表板,左边点击所有服务,找到应用注册,点击+新注册
image

2)填入名字,受支持账户类型前三任选,重定向填入 http://localhost:53682/ ,点击注册
image

3)复制应用程序(客户端)ID到记事本备用(获得了应用程序ID!),点击左边管理的证书和密码,点击+新客户端密码,点击添加,复制新客户端密码的值保存(获得了应用程序密码!)
image

image

4)点击左边管理的API权限,点击+添加权限,点击常用Microsoft API里的Microsoft Graph(就是那个蓝色水晶), 点击委托的权限,然后在下面的条例选中下列需要的权限,最后点击底部添加权限
赋予api权限的时候,选择以下几个

      Calendars.ReadWrite、Contacts.ReadWrite、Directory.ReadWrite.All、
      
      Files.ReadWrite.All、MailboxSettings.ReadWrite、Mail.ReadWrite、
      
      Notes.ReadWrite.All、People.Read.All、Sites.ReadWrite.All、
      
      Tasks.ReadWrite、User.ReadWrite.All

image

image

image

5)添加完自动跳回到权限首页,点击代表授予管理员同意
image

第二步,获取refresh_token(微软密钥)

1)rclone.exe所在文件夹,shift+右键,在此处打开powershell,输入下面修改后的内容,回车后跳出浏览器,登入e5账号,点击接受,回到powershell窗口,看到一串东西。

  ./rclone authorize "onedrive" "应用程序(客户端)ID" "应用程序密码"

2)在那一串东西里找到 “refresh_token”:” ,从双引号开始选中到 “,”expiry”:2021 为止(就是refresh_token后面双引号里那一串,不要双引号),如下图,右键复制保存(获得了微软密钥)

image

GITHUB方面的准备工作
第一步,fork本项目

登陆/新建github账号,回到本项目页面,点击右上角fork本项目的代码到你自己的账号,然后你账号下会出现一个一模一样的项目,接下来的操作均在你的这个项目下进行。

image

第二步,新建github密钥

1)进入你的个人设置页面 (右上角头像 Settings,不是仓库里的 Settings),选择 Developer settings -> Personal access tokens -> Generate new token
image

image

2)设置名字为 GH_TOKEN , 然后勾选repo,点击 Generate token ,最后复制保存生成的github密钥(获得了github密钥,一旦离开页面下次就看不到了!)
image

第三步,新建secret

1)依次点击页面上栏右边的 Setting -> 左栏 Secrets -> 右上 New repository secret,新建4个secret: GH_TOKEN、MS_TOKEN、CLIENT_ID、CLIENT_SECRET
image

image

(以下填入内容注意前后不要有空格空行)

GH_TOKEN

github密钥 (第三步获得),例如获得的密钥是abc…xyz,则在secret页面直接粘贴进去,不用做任何修改,只需保证前后没有空格空行
MS_TOKEN

微软密钥(第二步获得的refresh_token)
CLIENT_ID

应用程序ID (第一步获得)
CLIENT_SECRET

应用程序密码 (第一步获得)
调用
1)点击两次右上角的星星(star)启动action,,再点击上面的Action,选择Auto Api Pro 就能看到每次的运行日志,看看运行状况
(必需点进去Test Api看下,api有没有调用到位,有没有出错。外面的Auto Api打勾只能说明运行是正常的,我们还需要确认api调用成功了,就像图里的一样)

image
2)再点两次星星,如果还能成功运行就ok了(这一步是为了保证重新上传到secret的token是正确的)
教程完
额外设置 (看不懂请忽略)##
定时启动修改

多账号/应用支持

超级参数设置

定时启动修改
我设定的每6小时自动运行一次(周六日不启动),每次调用3轮(点击右上角星星/star也可以立马调用一次),你们自行斟酌修改(我也不知道保持活跃要调用多少次、多久):

定时自动启动修改地方:在.github/workflow/autoapi.yml(只修改这一个)文件里,自行百度cron定时任务格式,最短每5分钟一次

image

多账号/应用支持
如果想输入第二账号或者应用,请按上述获取第二个应用的id、密码、微软密钥:

再按以下步骤:

1)增加secret

依次点击页面上栏右边的 Setting -> 左栏 Secrets -> 右上 New repository secret,新增加secret:APP_NUM、MS_TOKEN_2、CLIENT_ID_2、CLIENT_SECRET_2

APP_NUM

账号/应用数量(现在例如是2,3个就是3,日后如果要增加请删掉新建APP_NUM)
MS_TOKEN_2

第二个账号的微软密钥(第二步refresh_token),(第三个就是MS_TOKEN_3,如此类推)
CLIENT_ID_2

第二个账号的应用程序ID(第一步)
CLIENT_SECRET_2

第二个账号的应用程序密码(第一步)
2)修改.github/workflows/里的两个yml文件(超过5个账号需要更改,5个及以下暂时不用修改文件,忽略这一步)

yml文件我已经注明了,看着改就行,我已经写入5个账号了,跟着复制粘贴很简单的(没有找到比较好的自动方案)

超级参数设置
runapi.py 文件第11行有个config_list,里面是以下参数配置

· 轮数:

     就是一次运行要跑多少轮api,也就是启动一次会重复跑几圈

· 是否启动随机时间(默认关闭):

    这个是每一轮结束,要不要等一个随机时间再开始调用下一轮。后面两个参数就是生成随机时间的,例如设置600,1200,就会延时600-1200s之间。

· 是否开启随机api顺序(默认开启):

    不开启就是初版10个api,固定顺序。开启就是28个api抽12个随机排序。

· 是否开启各api延时(默认关闭):

    这个是每个api之间要不要开启延时。后面两参数参考“随机时间”

· 是否开启各账号延时(默认关闭):

    这个是每个账号/应用之间要不要开启延时。后面两参数参考“随机时间”

(延时的设置是会延长运行时间的,全关闭大概每次运行1min,开启就会适当延长)

其他方式

如搭建Oneindex等文件列表程序,以及其它调用API的程序。

评论