UNPKG

rsshub

Version:
66 lines (59 loc) 1.64 kB
import { Route } from '@/types'; import got from '@/utils/got'; import { art } from '@/utils/render'; import path from 'node:path'; export const route: Route = { path: '/live/room/:id', categories: ['live'], example: '/lang/live/room/1352360', parameters: { id: '直播间 id, 可在主播直播间页 URL 中找到' }, features: { requireConfig: false, requirePuppeteer: false, antiCrawler: true, supportBT: false, supportPodcast: false, supportScihub: false, }, radar: [ { source: ['lang.live/room/:id'], }, ], name: '直播间开播', maintainers: ['MittWillson'], handler, }; async function handler(ctx) { const id = ctx.req.param('id'); const url = `https://www.lang.live/room/${id}`; const api = 'https://api.lang.live/langweb/v1/room/liveinfo'; const { data: { data }, } = await got(api, { searchParams: { room_id: id, }, }); let item = []; const name = data.live_info.nickname; if (data.live_info.live_status === 1) { item = [ { title: `${name} 开播了`, link: url, guid: `lang:live:room:${id}:${data.live_info.live_id}`, description: art(path.join(__dirname, 'templates/room.art'), { live_info: data.live_info, }), }, ]; } return { title: `${name} 的浪 Play 直播`, description: data.live_info.sign, link: url, item, allowEmpty: true, }; }