Files
MoonTVPlus/src/app/api/tv-remote/text/route.ts
T
2026-05-30 22:34:07 +08:00

34 lines
946 B
TypeScript

import { NextRequest, NextResponse } from 'next/server';
import { getAuthInfoFromCookie } from '@/lib/auth';
import type { TVRemoteTextCommand } from '@/lib/tv-remote-types';
const { sendTVRemoteCommand } = require('@/lib/tv-remote-hub');
export const runtime = 'nodejs';
export async function POST(request: NextRequest) {
const authInfo = getAuthInfoFromCookie(request);
if (!authInfo?.username) {
return NextResponse.json({ error: '未登录' }, { status: 401 });
}
const body = await request.json().catch(() => null) as {
deviceId?: string;
command?: TVRemoteTextCommand;
} | null;
if (!body?.deviceId || !body.command?.mode) {
return NextResponse.json({ error: '参数不完整' }, { status: 400 });
}
const result = sendTVRemoteCommand(
authInfo.username,
body.deviceId,
'tv-remote:text',
body.command
);
return NextResponse.json(result, { status: result.success ? 200 : 404 });
}