From 45f95c99b6908b41bbd7cccb507a957a1ef88853 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=87=89=E5=87=89?= Date: Mon, 12 Nov 2018 22:41:15 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0:=20TSSstatus=20(#1119)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * 增加:有品-每日上新 * 修复 summary 字段错误 * 将 youpin 模块转移至 mi 目录下,并更新文档 * 增加: TSSstatus --- docs/README.md | 6 ++++++ router.js | 3 +++ routes/tssstatus/index.js | 35 +++++++++++++++++++++++++++++++++++ 3 files changed, 44 insertions(+) create mode 100644 routes/tssstatus/index.js diff --git a/docs/README.md b/docs/README.md index a8fbeceba..e439aac48 100644 --- a/docs/README.md +++ b/docs/README.md @@ -2284,3 +2284,9 @@ category 对应的关键词有 + +### TSSstatus + + + +> board 和 build 可在[这里](http://api.ineal.me/tss/status)查看 diff --git a/router.js b/router.js index 2f495aedd..13677e0e8 100644 --- a/router.js +++ b/router.js @@ -787,6 +787,9 @@ router.get('/eeo/:category?', require('./routes/eeo/index')); // 腾讯视频 router.get('/tencentvideo/playlist/:id', require('./routes/tencent/video/playlist')); +// TSSstatus +router.get('/tssstatus/:board/:build', require('./routes/tssstatus')); + // Anime1 router.get('/anime1/anime/:time/:name', require('./routes/anime1/anime')); router.get('/anime1/search/:keyword', require('./routes/anime1/search')); diff --git a/routes/tssstatus/index.js b/routes/tssstatus/index.js new file mode 100644 index 000000000..8dc464b19 --- /dev/null +++ b/routes/tssstatus/index.js @@ -0,0 +1,35 @@ +const axios = require('../../utils/axios'); + +module.exports = async (ctx) => { + const { board, build } = ctx.params; + const response = await axios({ + method: 'get', + url: `http://api.ineal.me/tss/${board}/${build}`, + }); + + const resultItem = Object.values(response.data).map((item) => { + const firmware = item.firmwares[0]; + const description = ` + signing: ${firmware.signing.toString()}
+ started: ${firmware.started}
+ stopped: ${firmware.stopped}
+ model: ${item.model}
+ board: ${item.board}
+ version: ${firmware.version}
+ build: ${firmware.build}
+ `; + + return { + title: `signing: ${firmware.signing.toString()}-${item.model}-${firmware.version}`, + description, + guid: `${firmware.started} / ${firmware.stopped}`, + }; + }); + + ctx.state.data = { + title: 'TSSstatus', + link: 'http://api.ineal.me/tss/status', + description: "Real time status of every iOS firmware currently being signed by Apple's TSS server.", + item: resultItem, + }; +};