Add core MCP server implementation and Ross Talk protocol handler: types.ts
This commit is contained in:
parent
0bb71d63bb
commit
f269e7a638
1 changed files with 69 additions and 0 deletions
69
src/types.ts
Normal file
69
src/types.ts
Normal file
|
|
@ -0,0 +1,69 @@
|
|||
export interface RossUltrixState {
|
||||
connected: boolean;
|
||||
panels: Record<string, PanelStatus>;
|
||||
inputs: Record<string, InputStatus>;
|
||||
lastUpdate: Date;
|
||||
}
|
||||
|
||||
export interface PanelStatus {
|
||||
id: string;
|
||||
active: boolean;
|
||||
mixEffect?: string;
|
||||
lastUpdate: Date;
|
||||
}
|
||||
|
||||
export interface InputStatus {
|
||||
id: string;
|
||||
name: string;
|
||||
live: boolean;
|
||||
preview: boolean;
|
||||
lastUpdate: Date;
|
||||
}
|
||||
|
||||
export interface RossTalkConfig {
|
||||
host: string;
|
||||
port: number;
|
||||
onStateChange?: (state: Partial<RossUltrixState>) => void;
|
||||
}
|
||||
|
||||
export interface RossCommand {
|
||||
type: 'take' | 'auto' | 'preview' | 'program' | 'panel' | 'macro' | 'status';
|
||||
target?: string;
|
||||
parameters?: Record<string, any>;
|
||||
}
|
||||
|
||||
export interface RossSource {
|
||||
id: string;
|
||||
name: string;
|
||||
type: 'camera' | 'media' | 'cg' | 'aux' | 'color' | 'test';
|
||||
available: boolean;
|
||||
}
|
||||
|
||||
export interface RossPanel {
|
||||
id: string;
|
||||
name: string;
|
||||
active: boolean;
|
||||
mixEffect?: string;
|
||||
type: 'me' | 'aux' | 'dsk';
|
||||
}
|
||||
|
||||
export interface RossMacro {
|
||||
id: string;
|
||||
name: string;
|
||||
description?: string;
|
||||
parameters?: Record<string, any>;
|
||||
}
|
||||
|
||||
export interface RossTransition {
|
||||
type: 'cut' | 'mix' | 'dip' | 'wipe';
|
||||
duration?: number;
|
||||
parameters?: Record<string, any>;
|
||||
}
|
||||
|
||||
export interface RossMixEffect {
|
||||
id: string;
|
||||
program: string | null;
|
||||
preview: string | null;
|
||||
transition: RossTransition;
|
||||
inTransition: boolean;
|
||||
}
|
||||
Loading…
Reference in a new issue