120 lines
3.0 KiB
Thrift
120 lines
3.0 KiB
Thrift
namespace go ocean.cloud.playground
|
||
include "../base.thrift"
|
||
|
||
struct CreateShortcutCommandRequest {
|
||
1: string object_id
|
||
2: ShortcutCommand shortcuts
|
||
255: base.Base Base
|
||
}
|
||
|
||
|
||
struct CreateShortcutCommandResponse {
|
||
|
||
1: ShortcutCommand shortcuts
|
||
255: required base.BaseResp BaseResp
|
||
}
|
||
|
||
|
||
|
||
struct ShortcutStruct {
|
||
16: optional list<string> shortcut_sort // 快捷指令ID列表 实体上绑定的
|
||
17: optional list<ShortcutCommand> shortcut_list // 快捷指令内容list
|
||
}
|
||
|
||
struct ShortcutCommand {
|
||
2 : i64 object_id (api.js_conv="true") // 绑定实体ID
|
||
3 : string command_name // 命令名称
|
||
4 : string shortcut_command // 快捷指令
|
||
5 : string description // 描述
|
||
6 : SendType send_type // 发送类型
|
||
7 : ToolType tool_type // 使用工具type
|
||
8 : string work_flow_id
|
||
9 : string plugin_id
|
||
10: string plugin_api_name
|
||
11 : string template_query // 模板query
|
||
12 : list<Components> components_list // panel参数
|
||
15 : string card_schema // 表单的schema
|
||
16 : i64 command_id (api.js_conv="true") // 指令ID
|
||
17 : ToolInfo tool_info //工具信息 包含name+变量列表+...
|
||
18 : ShortcutFileInfo shortcut_icon // 指令图标
|
||
21 : optional string agent_id //multi的指令时,该指令由哪个节点执行
|
||
22 : i64 plugin_api_id (api.js_conv="true")
|
||
}
|
||
|
||
struct ShortcutFileInfo {
|
||
1 : string url
|
||
2 : string uri
|
||
}
|
||
|
||
|
||
struct Components { // panel参数
|
||
1 : string name
|
||
2 : string description
|
||
3 : InputType input_type
|
||
4 : string parameter // 请求工具时,参数的key
|
||
5 : list<string> options
|
||
6 : DefaultValue default_value
|
||
7 : bool hide // 是否隐藏不展示
|
||
8 : list<InputType> upload_options // input_type为MixUpload时,支持哪些类型
|
||
}
|
||
|
||
struct DefaultValue {
|
||
1: string value
|
||
2: InputType type
|
||
}
|
||
|
||
struct ToolInfo {
|
||
1:string tool_name
|
||
2:list<ToolParams> tool_params_list // 变量列表 插件&workFLow
|
||
}
|
||
|
||
struct ToolParams { // 参数列表
|
||
1 : string name
|
||
2 : bool required
|
||
3 : string desc
|
||
4 : string type
|
||
6 : string default_value // 默认值
|
||
8 : bool refer_component // 是否是panel参数
|
||
}
|
||
|
||
enum SendType {
|
||
SendTypeQuery = 0 // 直接发query
|
||
SendTypePanel = 1 // 使用面板
|
||
}
|
||
|
||
enum ToolType {
|
||
ToolTypeWorkFlow = 1 // 使用WorkFlow
|
||
ToolTypePlugin = 2 // 使用插件
|
||
}
|
||
|
||
enum InputType {
|
||
TextInput = 0,
|
||
Select = 1,
|
||
UploadImage = 2,
|
||
UploadDoc = 3,
|
||
UploadTable = 4,
|
||
UploadAudio = 5,
|
||
MixUpload = 6,
|
||
VIDEO = 7,
|
||
ARCHIVE = 8,
|
||
CODE = 9,
|
||
TXT = 10,
|
||
PPT = 11,
|
||
}
|
||
|
||
struct CreateUpdateShortcutCommandRequest {
|
||
1: required i64 object_id (api.js_conv="true")
|
||
2: required i64 space_id (api.js_conv="true")
|
||
3: required ShortcutCommand shortcuts
|
||
255: base.Base Base
|
||
}
|
||
struct CreateUpdateShortcutCommandResponse {
|
||
1: ShortcutCommand shortcuts
|
||
|
||
|
||
253: required i64 code
|
||
254: required string msg
|
||
255: required base.BaseResp BaseResp
|
||
}
|
||
|