跳至主要内容

Office E5 用outlook API自动订阅程序

 转自浅亿博客


申请office E5 开发者试用的教程

新版可续签的Office 365开发者试用订阅!E5(附自动续订的方法)

Onedrive容量 1T 修改 为5T,老帐号不删除重建

说明

  1. 此程序部署在我的服务器上,每隔2小时会自动调用outlook api 获取邮件列表
  2. 对于信息: 只会保存必要的 client_id、client_secret,其他任何内容都不会保存,
  3. 会读取授权的outlook账号邮箱邮件,但不会保存任何信息,仅仅是调用api。
  4. 请单独创建一个同域 E5 子账号进行授权,不要使用此账号进行发送、接收个人邮件,以免发生误会。

使用教程

1、注册自己的api key

登录进入 azure  ,登录账号使用你的e5账户 ,就是以xxx.onmicrosoft.com开头的的账户。

搜索“应用注册”

点击 新注册

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

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

2020-03-02 15:32

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

点击注册后记录以下信息

应用程序(客户端)ID

客户端密码

应用程序(客户端)ID:

创建客户端密码:

 

保存好以上2个key,一会需要用到。

配置api权限

勾选一下四个选项后,同时点击 代表XX授予管理员同意

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

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

2、添加key到自动订阅程序

进入 https://e5.qyi.io/user/home

这里需要github账户登录,同样的,我只能获取你在 github中的 用户id、用户名等基础信息(邮箱获取不了),其他的任何信息也获取不到(可自行尝试注册一个github Apps测试)。

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

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

client_id ->应用程序(客户端)ID

client_secret->客户端密码 

点击保存

 

保存完毕后再点击 授权

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

(因为在这一步我能获取到授权的outlook账户 邮件,但是程序不会保存,仅仅是调用api。)以免在以后发生误会。

 

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

 

到此时,授权就完成了。

3、下一步

已经没啦~

到这里你就可以不用管了,程序会每两个小时调用一次outlook的api。

界面写得辣鸡,因为我不会前端呀~大家将就看看就行了。

过几天我会把删除功能加上,可以删除在程序里注册的账户。

 

交流群:959720211

 

还是要说一下隐私安全问题

因为有几个读者也说到了,统一回答下

  1. api权限仅拥有 openid offline_access Mail.Read Mail.ReadWrite Mail.ReadBasic Mail.ReadBasic.ALL 这6个权限
  2. 也就是说我仅仅能读取授权账户的邮件,其他任何事都做不了,且我写的这个程序没有保存任何除key之外的信息
  3. 所以一开始我就说了,用子账户进行授权(空账户)及创建api,这样不涉及到 隐私及安全问题。
  4. 如果实在担心不想用了,azure 直接删掉api就可以了。

4、FQA

Q: 日志是空的

A:  如果是新加入的账户,请等待系统自动调用。

Q: 参数错误

A: 如果 应用id 与 密钥 都没有错误的情况下,那么创建的时候看一下 “任何组织目录(任何Azure AD目录-多租户)中的帐户和个人Microsoft 帐户(例如,Skype、Xbox)” 有没有选这个

Q: 什么时候续期

A:微软的续费很玄学,此方法不一定能续期成功。最近(2020-04-21)没人续期,初步怀疑是微软更改策略,或者是受疫情影响。

Q: REST API is not yet supported for this mailbox.

创建子账号的时候需要给outlook许可。

评论

此博客中的热门博文

科学上网工具Sub-Store部署使用

  转自: https://www.qichiyu.com/268.html Openwrt Docker安装: docker run -it -d \ --restart=always \ -e " SUB_STORE_BACKEND_SYNC_CRON =55 23 * * *" \ -e SUB_STORE_FRONTEND_BACKEND_PATH=/CKg2abstVnOeRpm1aB4G \ --net=host \ -v /etc/sub-store:/opt/app/data \ --name sub-store \ xream/sub-store VPS安装: docker run -it -d \ --restart=always \ -e " SUB_STORE_BACKEND_SYNC_CRON =50 23 * * *" \ -e SUB_STORE_FRONTEND_BACKEND_PATH=/T3B9dgzBzdRbBF8Aqx7P \ -p 3001:3001 \ -v /etc/sub-store:/opt/app/data \ --name sub-store \ xream/sub-store Docker compose代码: services: sub-store: stdin_open: true tty: true restart: always environment: - SUB_STORE_BACKEND_SYNC_CRON =50 23 * * * - SUB_STORE_FRONTEND_BACKEND_PATH=/iversonlive123456789 ports: - 3001:3001 volumes: - /etc/sub-store:/opt/app/data container_name: sub-store image: xream/sub-store networks: {} Sub-store地址: 如果你没有使用域名,那么请访问 http://192.168.0.188:3001?api=http://192....

使用小丸工具箱将使用了VSFilterMod插件的Aegisub字幕文件压制到视频中

 转自:https://zhuanlan.zhihu.com/p/103732408 通常视频字幕有三种存在方式:外挂字幕、内挂字幕、内嵌字幕。 外挂字幕指的是视频文件与字幕文件分离,使用者需要通过视频播放器的功能手动加载字幕到视频中。 内挂字幕与外挂字幕基本一致,只不过是将字幕文件一同封装进了支持字幕流的容器中(例如.mkv)。 上述字幕发行方式的优点是:1. 可以不需要将视频压制,只需要直接发布字幕或者简单地将字幕封装即可发布,节约发布者大量时间。2. 通常挂载的字幕分辨率不受视频分辨率影响,拥有最清晰锐利的观感。3. 观众可根据自身需要调节字幕。 缺点也很明显:1. 需要播放器支持。比如绝大多数手机自带播放器并不支持播放字幕流, 同时绝大多数播放器默认不支持VSFilterMod特效插件 。 2. 字幕不受保护,可能会被他人盗取,重新加工后二次发布。3. 有时候字幕内使用了用户未安装的字体,会导致播放字幕时字体被“降级”为默认字体宋体。 4. 若使用了大量特效则会导致字幕渲染掉帧、卡顿。 第三种方式的内嵌字幕,也叫硬字幕。这种方式需要将视频解码后通过字幕滤镜插件,将字幕完全与视频帧融合在一起重新编码。也就是说内嵌字幕视频中的字幕是完全和视频融为一体的。 内嵌字幕的兼容性最高,上述挂载字幕的缺点全部都没有,但是压制过程非常耗时且相对复杂。本文将介绍如何使用小丸工具箱进行对使用了  VSFilterMod  特效插件的.ass字幕压制到视频中,变为内嵌字幕视频。 本文由小Hshan编辑,保留原作者信息可自由转载。 本文必要软件: 小丸工具箱(官网链接已失效):  maruko.appinn.me/ 小丸工具箱r236绿色版网盘下载地址: 百度网盘: https://pan.baidu.com/s/1bhoEfkBMnShV8sIixrOFcg https://pan.baidu.com/s/1bhoEfkBMnShV8sIixrOFcg  提取码:gsi2 Mega: mega.nz/# VSFilterMod x86版:  https://github.com/sorayuki/VSFilterMod/releases/tag/r5.2.1 Avisynth 2.6.0 32位: sourceforge....