Add web
This commit is contained in:
129
web/types.ts
Normal file
129
web/types.ts
Normal file
@@ -0,0 +1,129 @@
|
||||
|
||||
export interface Assistant {
|
||||
id: string;
|
||||
name: string;
|
||||
callCount: number;
|
||||
opener: string;
|
||||
prompt: string;
|
||||
knowledgeBaseId: string;
|
||||
language: 'zh' | 'en';
|
||||
voice: string; // This will now store the ID of the voice from Voice Library
|
||||
speed: number;
|
||||
hotwords: string[];
|
||||
tools?: string[]; // IDs of enabled tools
|
||||
interruptionSensitivity?: number; // In ms
|
||||
configMode?: 'platform' | 'dify' | 'fastgpt' | 'none';
|
||||
apiUrl?: string;
|
||||
apiKey?: string;
|
||||
}
|
||||
|
||||
export interface Voice {
|
||||
id: string;
|
||||
name: string;
|
||||
vendor: string;
|
||||
gender: string;
|
||||
language: string;
|
||||
description: string;
|
||||
}
|
||||
|
||||
export interface KnowledgeBase {
|
||||
id: string;
|
||||
name: string;
|
||||
creator: string;
|
||||
createdAt: string;
|
||||
documents: KnowledgeDocument[];
|
||||
}
|
||||
|
||||
export interface KnowledgeDocument {
|
||||
id: string;
|
||||
name: string;
|
||||
size: string;
|
||||
uploadDate: string;
|
||||
}
|
||||
|
||||
export interface CallLog {
|
||||
id: string;
|
||||
source: 'debug' | 'external';
|
||||
status: 'connected' | 'missed';
|
||||
startTime: string;
|
||||
duration: string;
|
||||
agentName: string;
|
||||
}
|
||||
|
||||
export interface Workflow {
|
||||
id: string;
|
||||
name: string;
|
||||
nodeCount: number;
|
||||
createdAt: string;
|
||||
updatedAt: string;
|
||||
nodes: WorkflowNode[];
|
||||
edges: WorkflowEdge[];
|
||||
globalPrompt?: string;
|
||||
}
|
||||
|
||||
export interface WorkflowNode {
|
||||
name: string;
|
||||
type: 'conversation' | 'tool' | 'human' | 'end';
|
||||
isStart?: boolean;
|
||||
metadata: {
|
||||
position: { x: number; y: number };
|
||||
};
|
||||
prompt?: string;
|
||||
messagePlan?: {
|
||||
firstMessage?: string;
|
||||
};
|
||||
variableExtractionPlan?: {
|
||||
output: Array<{
|
||||
type: string;
|
||||
title: string;
|
||||
description: string;
|
||||
}>;
|
||||
};
|
||||
tool?: {
|
||||
type: string;
|
||||
function: {
|
||||
name: string;
|
||||
parameters: any;
|
||||
};
|
||||
destinations?: any[];
|
||||
messages?: any[];
|
||||
};
|
||||
globalNodePlan?: {
|
||||
enabled: boolean;
|
||||
enterCondition: string;
|
||||
};
|
||||
}
|
||||
|
||||
export interface WorkflowEdge {
|
||||
from: string;
|
||||
to: string;
|
||||
label?: string;
|
||||
}
|
||||
|
||||
export enum TabValue {
|
||||
GLOBAL = 'global',
|
||||
VOICE = 'voice',
|
||||
TOOLS = 'tools',
|
||||
LINK = 'link'
|
||||
}
|
||||
|
||||
export enum TestType {
|
||||
FIXED = 'fixed',
|
||||
INTELLIGENT = 'intelligent'
|
||||
}
|
||||
|
||||
export enum TestMethod {
|
||||
TEXT = 'text',
|
||||
AUDIO = 'audio'
|
||||
}
|
||||
|
||||
export interface AutoTestAssistant {
|
||||
id: string;
|
||||
name: string;
|
||||
type: TestType;
|
||||
method: TestMethod;
|
||||
targetAssistantId: string;
|
||||
fixedWorkflowSteps: string[];
|
||||
intelligentPrompt: string;
|
||||
createdAt: string;
|
||||
}
|
||||
Reference in New Issue
Block a user