Documentation
¶
Index ¶
- func ExtractUserMessage(msg *DingTalkMessage) string
- func GetGlobalMCPManager() *mcpclient.Manager
- func GetVersionInfo(c *gin.Context)
- func InitVersionHandler(version, gitCommit, buildTime string)
- func InitializeMCPServersFromDB(ctx context.Context, manager *mcpclient.Manager) error
- func IsValidTimestamp(timestamp string) bool
- func SetGlobalMCPManager(m *mcpclient.Manager)
- type AuthHandler
- type ChangePasswordRequest
- type ChatHandler
- type ChatMessage
- type ChatRequest
- type ChatResponse
- type ConfigHandler
- func (h *ConfigHandler) CreateIntegrationConfig(c *gin.Context)
- func (h *ConfigHandler) CreateLLMConfig(c *gin.Context)
- func (h *ConfigHandler) CreateMCPServer(c *gin.Context)
- func (h *ConfigHandler) CreateProviderAccount(c *gin.Context)
- func (h *ConfigHandler) DeleteIntegrationConfig(c *gin.Context)
- func (h *ConfigHandler) DeleteLLMConfig(c *gin.Context)
- func (h *ConfigHandler) DeleteMCPServerByName(c *gin.Context)
- func (h *ConfigHandler) DeleteProviderAccount(c *gin.Context)
- func (h *ConfigHandler) GetAllConfig(c *gin.Context)
- func (h *ConfigHandler) GetCICDConfig(c *gin.Context)
- func (h *ConfigHandler) GetIMConfig(c *gin.Context)
- func (h *ConfigHandler) GetIntegrationConfig(c *gin.Context)
- func (h *ConfigHandler) GetJenkinsConfig(c *gin.Context)
- func (h *ConfigHandler) GetLLMConfig(c *gin.Context)
- func (h *ConfigHandler) GetMCPServerByName(c *gin.Context)
- func (h *ConfigHandler) GetMCPTools(c *gin.Context)
- func (h *ConfigHandler) GetProviderAccount(c *gin.Context)
- func (h *ConfigHandler) GetServerConfig(c *gin.Context)
- func (h *ConfigHandler) GetSystemConfig(c *gin.Context)
- func (h *ConfigHandler) ListCICDConfigs(c *gin.Context)
- func (h *ConfigHandler) ListIMConfigs(c *gin.Context)
- func (h *ConfigHandler) ListIntegrationConfigs(c *gin.Context)
- func (h *ConfigHandler) ListLLMConfigs(c *gin.Context)
- func (h *ConfigHandler) ListMCPServers(c *gin.Context)
- func (h *ConfigHandler) ListProviderAccounts(c *gin.Context)
- func (h *ConfigHandler) ListSystemConfigs(c *gin.Context)
- func (h *ConfigHandler) SaveCICDConfig(c *gin.Context)
- func (h *ConfigHandler) SaveIMConfig(c *gin.Context)
- func (h *ConfigHandler) SaveJenkinsConfig(c *gin.Context)
- func (h *ConfigHandler) SaveServerConfig(c *gin.Context)
- func (h *ConfigHandler) SetSystemConfig(c *gin.Context)
- func (h *ConfigHandler) TestMCPTool(c *gin.Context)
- func (h *ConfigHandler) ToggleLLMConfig(c *gin.Context)
- func (h *ConfigHandler) ToggleMCPServer(c *gin.Context)
- func (h *ConfigHandler) ToggleMCPTool(c *gin.Context)
- func (h *ConfigHandler) UpdateIntegrationConfig(c *gin.Context)
- func (h *ConfigHandler) UpdateLLMConfig(c *gin.Context)
- func (h *ConfigHandler) UpdateMCPServerByName(c *gin.Context)
- func (h *ConfigHandler) UpdateProviderAccount(c *gin.Context)
- type ConversationHandler
- func (h *ConversationHandler) CreateConversation(c *gin.Context)
- func (h *ConversationHandler) DeleteConversation(c *gin.Context)
- func (h *ConversationHandler) GetConversation(c *gin.Context)
- func (h *ConversationHandler) ListConversations(c *gin.Context)
- func (h *ConversationHandler) UpdateConversation(c *gin.Context)
- type ConversationWithMessages
- type CreateConversationRequest
- type DashboardHandler
- type DingTalkAtUser
- type DingTalkCrypto
- type DingTalkIntent
- type DingTalkMarkdownMsg
- type DingTalkMessage
- type DingTalkMessageHandler
- type DingTalkResponse
- type DingTalkService
- type DingTalkStreamClient
- func (c *DingTalkStreamClient) CreateAndDeliverCard(ctx context.Context, ...) error
- func (c *DingTalkStreamClient) GetAccessToken() (string, error)
- func (c *DingTalkStreamClient) StreamError(trackID string, err error, question string) error
- func (c *DingTalkStreamClient) StreamInitial(trackID, question string) error
- func (c *DingTalkStreamClient) StreamResponse(ctx context.Context, trackID string, contentCh <-chan string, question string)
- func (c *DingTalkStreamClient) StreamingUpdate(trackID, content string, isFinalize bool) error
- type DingTalkStreamHandler
- type DingTalkText
- type DingTalkTextMsg
- type FeishuStreamServer
- type HTTPGinServer
- type HistoryHandler
- type Intent
- type IntentParser
- type LogHandler
- type LoginRequest
- type LoginResponse
- type MCPHandler
- type Message
- type Response
- type ServiceHandler
- type ServiceManager
- func (sm *ServiceManager) GetServiceStatus() map[string]bool
- func (sm *ServiceManager) GetWecomHandler() *wecom.MessageHandler
- func (sm *ServiceManager) IsWecomRunning() bool
- func (sm *ServiceManager) StartDingTalk(ctx context.Context) error
- func (sm *ServiceManager) StartFeishu(ctx context.Context) error
- func (sm *ServiceManager) StartWecom(ctx context.Context) error
- func (sm *ServiceManager) StopDingTalk(ctx context.Context) error
- func (sm *ServiceManager) StopFeishu(ctx context.Context) error
- func (sm *ServiceManager) StopWecom(ctx context.Context) error
- func (sm *ServiceManager) SyncWithDatabase(ctx context.Context) error
- func (sm *ServiceManager) ToggleService(ctx context.Context, platform string, enabled bool) error
- func (sm *ServiceManager) UpdateAndToggle(ctx context.Context, imConfig *model.IMConfig) error
- type StreamChunk
- type UpdateConversationRequest
- type UserHandler
- type UserInfoData
- type VersionHandler
- type VersionInfo
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ExtractUserMessage ¶
func ExtractUserMessage(msg *DingTalkMessage) string
ExtractUserMessage 提取用户消息
func GetGlobalMCPManager ¶ added in v0.2.0
GetGlobalMCPManager 获取全局 MCP 客户端管理器
func GetVersionInfo ¶ added in v0.2.0
GetVersionInfo 获取版本信息的快捷函数
func InitVersionHandler ¶ added in v0.2.0
func InitVersionHandler(version, gitCommit, buildTime string)
InitVersionHandler 初始化全局版本处理器
func InitializeMCPServersFromDB ¶ added in v0.2.0
InitializeMCPServersFromDB 从数据库加载并连接已启用的 MCP 服务器
func SetGlobalMCPManager ¶ added in v0.2.0
SetGlobalMCPManager 设置全局 MCP 客户端管理器
Types ¶
type AuthHandler ¶ added in v0.2.0
type AuthHandler struct {
// contains filtered or unexported fields
}
AuthHandler 认证处理器
func (*AuthHandler) ChangePassword ¶ added in v0.2.0
func (h *AuthHandler) ChangePassword(c *gin.Context)
ChangePassword 修改密码
func (*AuthHandler) GetUserInfo ¶ added in v0.2.0
func (h *AuthHandler) GetUserInfo(c *gin.Context)
GetUserInfo 获取当前用户信息
func (*AuthHandler) Logout ¶ added in v0.2.0
func (h *AuthHandler) Logout(c *gin.Context)
Logout 用户登出
type ChangePasswordRequest ¶ added in v0.2.0
type ChangePasswordRequest struct {
OldPassword string `json:"oldPassword" binding:"required"`
NewPassword string `json:"newPassword" binding:"required,min=6"`
}
ChangePasswordRequest 修改密码请求
type ChatHandler ¶ added in v0.2.0
type ChatHandler struct {
// contains filtered or unexported fields
}
ChatHandler 处理 AI 对话请求
func NewChatHandler ¶ added in v0.2.0
func NewChatHandler(cfg *config.Config, mcpServer *imcp.MCPServer) *ChatHandler
NewChatHandler 创建 ChatHandler
func (*ChatHandler) Completions ¶ added in v0.2.0
func (h *ChatHandler) Completions(c *gin.Context)
Completions 处理对话请求 (支持流式和非流式,集成 MCP 工具)
func (*ChatHandler) GetModels ¶ added in v0.2.0
func (h *ChatHandler) GetModels(c *gin.Context)
GetModels 获取可用的模型列表
type ChatMessage ¶ added in v0.2.0
ChatMessage 对话消息
type ChatRequest ¶ added in v0.2.0
type ChatRequest struct {
Messages []ChatMessage `json:"messages"`
Model string `json:"model,omitempty"`
Stream bool `json:"stream"`
Temperature float64 `json:"temperature,omitempty"`
MaxTokens int `json:"max_tokens,omitempty"`
ConversationID uint `json:"conversation_id,omitempty"` // 所属会话ID
}
ChatRequest 对话请求
type ChatResponse ¶ added in v0.2.0
type ChatResponse struct {
ID string `json:"id"`
Object string `json:"object"`
Created int64 `json:"created"`
Model string `json:"model"`
Choices []struct {
Index int `json:"index"`
Message struct {
Role string `json:"role"`
Content string `json:"content"`
} `json:"message"`
FinishReason string `json:"finish_reason"`
} `json:"choices"`
Usage struct {
PromptTokens int `json:"prompt_tokens"`
CompletionTokens int `json:"completion_tokens"`
TotalTokens int `json:"total_tokens"`
} `json:"usage"`
}
ChatResponse 非流式对话响应
type ConfigHandler ¶ added in v0.2.0
type ConfigHandler struct {
// contains filtered or unexported fields
}
ConfigHandler 配置管理处理器
func NewConfigHandler ¶ added in v0.2.0
func NewConfigHandler() *ConfigHandler
NewConfigHandler 创建配置处理器
func (*ConfigHandler) CreateIntegrationConfig ¶ added in v0.2.0
func (h *ConfigHandler) CreateIntegrationConfig(c *gin.Context)
CreateIntegrationConfig 创建集成应用配置
func (*ConfigHandler) CreateLLMConfig ¶ added in v0.2.0
func (h *ConfigHandler) CreateLLMConfig(c *gin.Context)
CreateLLMConfig 创建 LLM 配置
func (*ConfigHandler) CreateMCPServer ¶ added in v0.2.0
func (h *ConfigHandler) CreateMCPServer(c *gin.Context)
CreateMCPServer 创建 MCP 服务器
func (*ConfigHandler) CreateProviderAccount ¶ added in v0.2.0
func (h *ConfigHandler) CreateProviderAccount(c *gin.Context)
CreateProviderAccount 创建云厂商账号
func (*ConfigHandler) DeleteIntegrationConfig ¶ added in v0.2.0
func (h *ConfigHandler) DeleteIntegrationConfig(c *gin.Context)
DeleteIntegrationConfig 删除集成应用配置
func (*ConfigHandler) DeleteLLMConfig ¶ added in v0.2.0
func (h *ConfigHandler) DeleteLLMConfig(c *gin.Context)
DeleteLLMConfig 删除 LLM 配置
func (*ConfigHandler) DeleteMCPServerByName ¶ added in v0.2.0
func (h *ConfigHandler) DeleteMCPServerByName(c *gin.Context)
DeleteMCPServerByName 根据名称删除 MCP 服务器
func (*ConfigHandler) DeleteProviderAccount ¶ added in v0.2.0
func (h *ConfigHandler) DeleteProviderAccount(c *gin.Context)
DeleteProviderAccount 删除云厂商账号
func (*ConfigHandler) GetAllConfig ¶ added in v0.2.0
func (h *ConfigHandler) GetAllConfig(c *gin.Context)
GetAllConfig 获取全量配置
func (*ConfigHandler) GetCICDConfig ¶ added in v0.2.0
func (h *ConfigHandler) GetCICDConfig(c *gin.Context)
GetCICDConfig 获取 CICD 配置
func (*ConfigHandler) GetIMConfig ¶ added in v0.2.0
func (h *ConfigHandler) GetIMConfig(c *gin.Context)
GetIMConfig 获取 IM 配置
func (*ConfigHandler) GetIntegrationConfig ¶ added in v0.2.0
func (h *ConfigHandler) GetIntegrationConfig(c *gin.Context)
GetIntegrationConfig 获取指定集成应用配置
func (*ConfigHandler) GetJenkinsConfig ¶ added in v0.2.0
func (h *ConfigHandler) GetJenkinsConfig(c *gin.Context)
GetJenkinsConfig 获取 Jenkins 配置
func (*ConfigHandler) GetLLMConfig ¶ added in v0.2.0
func (h *ConfigHandler) GetLLMConfig(c *gin.Context)
GetLLMConfig 获取指定 LLM 配置
func (*ConfigHandler) GetMCPServerByName ¶ added in v0.2.0
func (h *ConfigHandler) GetMCPServerByName(c *gin.Context)
GetMCPServerByName 根据名称获取 MCP 服务器详情
func (*ConfigHandler) GetMCPTools ¶ added in v0.2.0
func (h *ConfigHandler) GetMCPTools(c *gin.Context)
GetMCPTools 获取 MCP 服务器的工具列表
func (*ConfigHandler) GetProviderAccount ¶ added in v0.2.0
func (h *ConfigHandler) GetProviderAccount(c *gin.Context)
GetProviderAccount 获取云厂商账号详情
func (*ConfigHandler) GetServerConfig ¶ added in v0.2.0
func (h *ConfigHandler) GetServerConfig(c *gin.Context)
GetServerConfig 获取服务器配置
func (*ConfigHandler) GetSystemConfig ¶ added in v0.2.0
func (h *ConfigHandler) GetSystemConfig(c *gin.Context)
GetSystemConfig 获取系统配置
func (*ConfigHandler) ListCICDConfigs ¶ added in v0.2.0
func (h *ConfigHandler) ListCICDConfigs(c *gin.Context)
ListCICDConfigs 列出所有 CICD 配置
func (*ConfigHandler) ListIMConfigs ¶ added in v0.2.0
func (h *ConfigHandler) ListIMConfigs(c *gin.Context)
ListIMConfigs 列出所有 IM 配置
func (*ConfigHandler) ListIntegrationConfigs ¶ added in v0.2.0
func (h *ConfigHandler) ListIntegrationConfigs(c *gin.Context)
ListIntegrationConfigs 列出所有集成应用配置
func (*ConfigHandler) ListLLMConfigs ¶ added in v0.2.0
func (h *ConfigHandler) ListLLMConfigs(c *gin.Context)
ListLLMConfigs 列出所有 LLM 配置
func (*ConfigHandler) ListMCPServers ¶ added in v0.2.0
func (h *ConfigHandler) ListMCPServers(c *gin.Context)
ListMCPServers 列出 MCP 服务器
func (*ConfigHandler) ListProviderAccounts ¶ added in v0.2.0
func (h *ConfigHandler) ListProviderAccounts(c *gin.Context)
ListProviderAccounts 列出云厂商账号
func (*ConfigHandler) ListSystemConfigs ¶ added in v0.2.0
func (h *ConfigHandler) ListSystemConfigs(c *gin.Context)
ListSystemConfigs 列出所有系统配置
func (*ConfigHandler) SaveCICDConfig ¶ added in v0.2.0
func (h *ConfigHandler) SaveCICDConfig(c *gin.Context)
SaveCICDConfig 保存 CICD 配置
func (*ConfigHandler) SaveIMConfig ¶ added in v0.2.0
func (h *ConfigHandler) SaveIMConfig(c *gin.Context)
SaveIMConfig 保存 IM 配置
func (*ConfigHandler) SaveJenkinsConfig ¶ added in v0.2.0
func (h *ConfigHandler) SaveJenkinsConfig(c *gin.Context)
SaveJenkinsConfig 保存 Jenkins 配置
func (*ConfigHandler) SaveServerConfig ¶ added in v0.2.0
func (h *ConfigHandler) SaveServerConfig(c *gin.Context)
SaveServerConfig 保存服务器配置
func (*ConfigHandler) SetSystemConfig ¶ added in v0.2.0
func (h *ConfigHandler) SetSystemConfig(c *gin.Context)
SetSystemConfig 设置系统配置
func (*ConfigHandler) TestMCPTool ¶ added in v0.2.0
func (h *ConfigHandler) TestMCPTool(c *gin.Context)
TestMCPTool 测试调用 MCP 工具
func (*ConfigHandler) ToggleLLMConfig ¶ added in v0.2.0
func (h *ConfigHandler) ToggleLLMConfig(c *gin.Context)
ToggleLLMConfig 切换 LLM 配置启用状态
func (*ConfigHandler) ToggleMCPServer ¶ added in v0.2.0
func (h *ConfigHandler) ToggleMCPServer(c *gin.Context)
ToggleMCPServer 切换 MCP 服务器启用状态
func (*ConfigHandler) ToggleMCPTool ¶ added in v0.2.0
func (h *ConfigHandler) ToggleMCPTool(c *gin.Context)
ToggleMCPTool 切换 MCP 工具的启用状态
func (*ConfigHandler) UpdateIntegrationConfig ¶ added in v0.2.0
func (h *ConfigHandler) UpdateIntegrationConfig(c *gin.Context)
UpdateIntegrationConfig 更新集成应用配置
func (*ConfigHandler) UpdateLLMConfig ¶ added in v0.2.0
func (h *ConfigHandler) UpdateLLMConfig(c *gin.Context)
UpdateLLMConfig 更新 LLM 配置
func (*ConfigHandler) UpdateMCPServerByName ¶ added in v0.2.0
func (h *ConfigHandler) UpdateMCPServerByName(c *gin.Context)
UpdateMCPServerByName 根据名称更新 MCP 服务器
func (*ConfigHandler) UpdateProviderAccount ¶ added in v0.2.0
func (h *ConfigHandler) UpdateProviderAccount(c *gin.Context)
UpdateProviderAccount 更新云厂商账号
type ConversationHandler ¶ added in v0.2.0
type ConversationHandler struct {
// contains filtered or unexported fields
}
ConversationHandler 会话处理器
func NewConversationHandler ¶ added in v0.2.0
func NewConversationHandler() *ConversationHandler
NewConversationHandler 创建会话处理器
func (*ConversationHandler) CreateConversation ¶ added in v0.2.0
func (h *ConversationHandler) CreateConversation(c *gin.Context)
CreateConversation 创建会话
func (*ConversationHandler) DeleteConversation ¶ added in v0.2.0
func (h *ConversationHandler) DeleteConversation(c *gin.Context)
DeleteConversation 删除会话
func (*ConversationHandler) GetConversation ¶ added in v0.2.0
func (h *ConversationHandler) GetConversation(c *gin.Context)
GetConversation 获取会话详情(包含所有消息)
func (*ConversationHandler) ListConversations ¶ added in v0.2.0
func (h *ConversationHandler) ListConversations(c *gin.Context)
ListConversations 列出用户的会话列表
func (*ConversationHandler) UpdateConversation ¶ added in v0.2.0
func (h *ConversationHandler) UpdateConversation(c *gin.Context)
UpdateConversation 更新会话
type ConversationWithMessages ¶ added in v0.2.0
type ConversationWithMessages struct {
ID uint `json:"id"`
Title string `json:"title"`
Username string `json:"username"`
CreatedAt string `json:"created_at"`
UpdatedAt string `json:"updated_at"`
LastMessageAt string `json:"last_message_at"`
Messages []Message `json:"messages"`
}
ConversationWithMessages 会话及其消息
type CreateConversationRequest ¶ added in v0.2.0
type CreateConversationRequest struct {
Title string `json:"title" binding:"required"`
}
CreateConversationRequest 创建会话请求
type DashboardHandler ¶ added in v0.2.0
type DashboardHandler struct {
// contains filtered or unexported fields
}
DashboardHandler 仪表盘处理器
func NewDashboardHandler ¶ added in v0.2.0
func NewDashboardHandler() *DashboardHandler
NewDashboardHandler 创建仪表盘处理器
func (*DashboardHandler) GetHealth ¶ added in v0.2.0
func (h *DashboardHandler) GetHealth(c *gin.Context)
GetHealth 获取基础设施健康状态
func (*DashboardHandler) GetStats ¶ added in v0.2.0
func (h *DashboardHandler) GetStats(c *gin.Context)
GetStats 获取仪表盘统计数据
type DingTalkAtUser ¶
type DingTalkAtUser struct {
DingtalkID string `json:"dingtalkId"`
}
type DingTalkCrypto ¶
type DingTalkCrypto struct {
// contains filtered or unexported fields
}
DingTalkCrypto 回调加解密工具
func NewDingTalkCrypto ¶
func NewDingTalkCrypto(token, encodingAESKey, suiteKey string) (*DingTalkCrypto, error)
NewDingTalkCrypto 创建回调加解密工具
func (*DingTalkCrypto) DecryptMessage ¶
func (c *DingTalkCrypto) DecryptMessage(encryptedMsg string) (*DingTalkMessage, error)
DecryptMessage 解密消息
func (*DingTalkCrypto) VerifySignature ¶
func (c *DingTalkCrypto) VerifySignature(timestamp, nonce, body, signature string) bool
VerifySignature 验证签名
type DingTalkIntent ¶
DingTalkIntent 用户意图
type DingTalkMarkdownMsg ¶
type DingTalkMessage ¶
type DingTalkMessage struct {
MsgID string `json:"msgId"`
MsgType string `json:"msgtype"`
CreateAt int64 `json:"createAt"`
ConversationID string `json:"conversationId"`
ConversationType string `json:"conversationType"` // "1"=单聊, "2"=群聊
SenderID string `json:"senderId"`
SenderStaffID string `json:"senderStaffId"`
SenderNick string `json:"senderNick"`
ChatbotUserID string `json:"chatbotUserId"`
Text *DingTalkText `json:"text,omitempty"`
AtUsers []DingTalkAtUser `json:"atUsers,omitempty"`
}
DingTalkMessage 钉钉消息
type DingTalkMessageHandler ¶
type DingTalkMessageHandler struct {
// contains filtered or unexported fields
}
DingTalkMessageHandler 消息处理器
func NewDingTalkMessageHandler ¶
func NewDingTalkMessageHandler(cfg *config.Config, mcpServer *imcp.MCPServer) *DingTalkMessageHandler
NewDingTalkMessageHandler 创建消息处理器
func (*DingTalkMessageHandler) HandleMessage ¶
func (h *DingTalkMessageHandler) HandleMessage(ctx context.Context, msg *DingTalkMessage) (*DingTalkResponse, error)
HandleMessage 处理消息
type DingTalkResponse ¶
type DingTalkResponse struct {
MsgType string `json:"msgtype"`
Text *DingTalkTextMsg `json:"text,omitempty"`
Markdown *DingTalkMarkdownMsg `json:"markdown,omitempty"`
}
type DingTalkService ¶
type DingTalkService struct {
// contains filtered or unexported fields
}
DingTalkService 钉钉服务
func NewDingTalkService ¶
NewDingTalkService 创建钉钉服务
type DingTalkStreamClient ¶
type DingTalkStreamClient struct {
// contains filtered or unexported fields
}
DingTalkStreamClient 钉钉流式客户端(使用官方SDK)
func NewDingTalkStreamClient ¶
func NewDingTalkStreamClient(appKey, appSecret, templateID string) (*DingTalkStreamClient, error)
NewDingTalkStreamClient 创建钉钉流式客户端
func (*DingTalkStreamClient) CreateAndDeliverCard ¶
func (c *DingTalkStreamClient) CreateAndDeliverCard(ctx context.Context, trackID, conversationID, conversationType, senderStaffID string) error
CreateAndDeliverCard 创建并投递 AI 卡片(实现CardClient接口)
func (*DingTalkStreamClient) GetAccessToken ¶
func (c *DingTalkStreamClient) GetAccessToken() (string, error)
GetAccessToken 获取访问令牌(带缓存)
func (*DingTalkStreamClient) StreamError ¶
func (c *DingTalkStreamClient) StreamError(trackID string, err error, question string) error
StreamError 发送错误信息
func (*DingTalkStreamClient) StreamInitial ¶
func (c *DingTalkStreamClient) StreamInitial(trackID, question string) error
StreamInitial 发送初始提示信息
func (*DingTalkStreamClient) StreamResponse ¶
func (c *DingTalkStreamClient) StreamResponse(ctx context.Context, trackID string, contentCh <-chan string, question string)
StreamResponse 流式响应(定时更新)
func (*DingTalkStreamClient) StreamingUpdate ¶
func (c *DingTalkStreamClient) StreamingUpdate(trackID, content string, isFinalize bool) error
StreamingUpdate 流式更新卡片内容
type DingTalkStreamHandler ¶
type DingTalkStreamHandler struct {
// contains filtered or unexported fields
}
DingTalkStreamHandler Stream模式处理器
func NewDingTalkStreamHandler ¶
func NewDingTalkStreamHandler(cfg *config.Config, cardClient *DingTalkStreamClient, mcpServer *imcp.MCPServer) *DingTalkStreamHandler
NewDingTalkStreamHandler 创建Stream处理器
type DingTalkText ¶
type DingTalkText struct {
Content string `json:"content"`
}
type DingTalkTextMsg ¶
type DingTalkTextMsg struct {
Content string `json:"content"`
}
type FeishuStreamServer ¶ added in v0.1.2
type FeishuStreamServer struct {
// contains filtered or unexported fields
}
FeishuStreamServer 飞书 Stream 服务
func NewFeishuStreamServer ¶ added in v0.1.2
func NewFeishuStreamServer(cfg *config.Config, mcpServer *imcp.MCPServer) (*FeishuStreamServer, error)
NewFeishuStreamServer 创建飞书 Stream 服务
func (*FeishuStreamServer) Start ¶ added in v0.1.2
func (s *FeishuStreamServer) Start() error
Start 启动飞书 Stream 服务
func (*FeishuStreamServer) Stop ¶ added in v0.1.2
func (s *FeishuStreamServer) Stop() error
Stop 停止飞书 Stream 服务
type HTTPGinServer ¶
type HTTPGinServer struct {
// contains filtered or unexported fields
}
HTTPGinServer 基于 Gin 的 HTTP 服务器
func NewHTTPGinServer ¶
func NewHTTPGinServer(cfg *config.Config) *HTTPGinServer
NewHTTPGinServer 创建基于 Gin 的 HTTP 服务器
func (*HTTPGinServer) GetServiceManager ¶ added in v0.2.0
func (s *HTTPGinServer) GetServiceManager() *ServiceManager
GetServiceManager 获取服务管理器
func (*HTTPGinServer) SetMCPServer ¶
func (s *HTTPGinServer) SetMCPServer(mcpServer *imcp.MCPServer)
SetMCPServer 设置 MCP Server
type HistoryHandler ¶ added in v0.2.0
type HistoryHandler struct {
// contains filtered or unexported fields
}
HistoryHandler 对话历史处理器
func NewHistoryHandler ¶ added in v0.2.0
func NewHistoryHandler() *HistoryHandler
NewHistoryHandler 创建对话历史处理器
func (*HistoryHandler) GetChatContext ¶ added in v0.2.0
func (h *HistoryHandler) GetChatContext(c *gin.Context)
GetChatContext 获取消息上下文
func (*HistoryHandler) GetChatLogs ¶ added in v0.2.0
func (h *HistoryHandler) GetChatLogs(c *gin.Context)
GetChatLogs 获取对话记录
type Intent ¶
type Intent struct {
Action string // list, get, search
Provider string // aliyun, tencent, jenkins
Resource string // ecs, cvm, rds, cdb, job, build
Params map[string]string // 参数
MCPTool string // 对应的 MCP 工具名称
}
Intent 用户意图
type IntentParser ¶
type IntentParser struct {
// contains filtered or unexported fields
}
IntentParser 意图解析器
type LogHandler ¶ added in v0.2.0
type LogHandler struct {
// contains filtered or unexported fields
}
LogHandler 日志处理器
func (*LogHandler) GetMCPLogStats ¶ added in v0.2.0
func (h *LogHandler) GetMCPLogStats(c *gin.Context)
GetMCPLogStats 获取 MCP 调用统计信息
func (*LogHandler) GetMCPLogs ¶ added in v0.2.0
func (h *LogHandler) GetMCPLogs(c *gin.Context)
GetMCPLogs 获取 MCP 调用日志
type LoginRequest ¶ added in v0.2.0
type LoginRequest struct {
Username string `json:"username" binding:"required"`
Password string `json:"password" binding:"required"`
}
LoginRequest 登录请求
type LoginResponse ¶ added in v0.2.0
type LoginResponse struct {
AccessToken string `json:"accessToken"`
UserInfo UserInfoData `json:"userInfo"`
}
LoginResponse 登录响应
type MCPHandler ¶ added in v0.2.0
type MCPHandler struct {
// contains filtered or unexported fields
}
MCPHandler MCP 管理处理器
func (*MCPHandler) DebugExecute ¶ added in v0.2.0
func (h *MCPHandler) DebugExecute(c *gin.Context)
DebugExecute 调试执行 MCP 工具
type Message ¶ added in v0.2.0
type Message struct {
ID uint `json:"id"`
Role string `json:"role"` // "user" or "model"
Content string `json:"content"`
Timestamp string `json:"timestamp"`
}
Message 消息
type Response ¶
type Response struct {
Code int `json:"code"`
Message string `json:"message"`
Data any `json:"data,omitempty"`
}
Response 统一响应结构
type ServiceHandler ¶ added in v0.2.0
type ServiceHandler struct {
// contains filtered or unexported fields
}
ServiceHandler 服务管理处理器
func NewServiceHandler ¶ added in v0.2.0
func NewServiceHandler(sm *ServiceManager) *ServiceHandler
NewServiceHandler 创建服务处理器
func (*ServiceHandler) GetPlatformStatus ¶ added in v0.2.0
func (h *ServiceHandler) GetPlatformStatus(c *gin.Context)
GetPlatformStatus 获取指定平台的服务状态
func (*ServiceHandler) GetServiceStatus ¶ added in v0.2.0
func (h *ServiceHandler) GetServiceStatus(c *gin.Context)
GetServiceStatus 获取服务状态
func (*ServiceHandler) ToggleIMService ¶ added in v0.2.0
func (h *ServiceHandler) ToggleIMService(c *gin.Context)
ToggleIMService 切换 IM 服务状态
type ServiceManager ¶ added in v0.2.0
type ServiceManager struct {
// contains filtered or unexported fields
}
ServiceManager 服务管理器,用于管理 IM 服务的生命周期
func NewServiceManager ¶ added in v0.2.0
func NewServiceManager(cfg *config.Config, mcpServer *imcp.MCPServer) *ServiceManager
NewServiceManager 创建服务管理器
func (*ServiceManager) GetServiceStatus ¶ added in v0.2.0
func (sm *ServiceManager) GetServiceStatus() map[string]bool
GetServiceStatus 获取服务状态
func (*ServiceManager) GetWecomHandler ¶ added in v0.2.0
func (sm *ServiceManager) GetWecomHandler() *wecom.MessageHandler
GetWecomHandler 获取企业微信处理器
func (*ServiceManager) IsWecomRunning ¶ added in v0.2.0
func (sm *ServiceManager) IsWecomRunning() bool
IsWecomRunning 检查企业微信服务是否运行
func (*ServiceManager) StartDingTalk ¶ added in v0.2.0
func (sm *ServiceManager) StartDingTalk(ctx context.Context) error
StartDingTalk 启动钉钉服务
func (*ServiceManager) StartFeishu ¶ added in v0.2.0
func (sm *ServiceManager) StartFeishu(ctx context.Context) error
StartFeishu 启动飞书服务
func (*ServiceManager) StartWecom ¶ added in v0.2.0
func (sm *ServiceManager) StartWecom(ctx context.Context) error
StartWecom 启动企业微信服务
func (*ServiceManager) StopDingTalk ¶ added in v0.2.0
func (sm *ServiceManager) StopDingTalk(ctx context.Context) error
StopDingTalk 停止钉钉服务
func (*ServiceManager) StopFeishu ¶ added in v0.2.0
func (sm *ServiceManager) StopFeishu(ctx context.Context) error
StopFeishu 停止飞书服务
func (*ServiceManager) StopWecom ¶ added in v0.2.0
func (sm *ServiceManager) StopWecom(ctx context.Context) error
StopWecom 停止企业微信服务
func (*ServiceManager) SyncWithDatabase ¶ added in v0.2.0
func (sm *ServiceManager) SyncWithDatabase(ctx context.Context) error
SyncWithDatabase 从数据库同步服务状态
func (*ServiceManager) ToggleService ¶ added in v0.2.0
ToggleService 切换服务状态
func (*ServiceManager) UpdateAndToggle ¶ added in v0.2.0
UpdateAndToggle 更新配置并切换服务状态
type StreamChunk ¶ added in v0.2.0
type StreamChunk struct {
ID string `json:"id"`
Object string `json:"object"`
Created int64 `json:"created"`
Model string `json:"model"`
Choices []struct {
Index int `json:"index"`
Delta struct {
Role string `json:"role,omitempty"`
Content string `json:"content,omitempty"`
} `json:"delta"`
FinishReason *string `json:"finish_reason"`
} `json:"choices"`
}
StreamChunk 流式响��块
type UpdateConversationRequest ¶ added in v0.2.0
type UpdateConversationRequest struct {
Title string `json:"title" binding:"required"`
}
UpdateConversationRequest 更新会话请求
type UserHandler ¶ added in v0.2.0
type UserHandler struct{}
UserHandler 用户处理器
func (*UserHandler) GetMenuList ¶ added in v0.2.0
func (h *UserHandler) GetMenuList(c *gin.Context)
GetMenuList 获取菜单列表 (开发模式使用的模拟接口)
func (*UserHandler) GetUserInfo ¶ added in v0.2.0
func (h *UserHandler) GetUserInfo(c *gin.Context)
GetUserInfo 获取用户信息 (开发模式使用的模拟接口)
func (*UserHandler) Login ¶ added in v0.2.0
func (h *UserHandler) Login(c *gin.Context)
Login 用户登录 (开发模式使用的模拟接口)
func (*UserHandler) Logout ¶ added in v0.2.0
func (h *UserHandler) Logout(c *gin.Context)
Logout 用户登出
type UserInfoData ¶ added in v0.2.0
type UserInfoData struct {
ID uint `json:"id"`
Username string `json:"username"`
Nickname string `json:"nickname"`
Email string `json:"email"`
Avatar string `json:"avatar,omitempty"`
Roles []string `json:"roles"`
}
UserInfoData 用户信息
type VersionHandler ¶ added in v0.2.0
type VersionHandler struct {
// contains filtered or unexported fields
}
VersionHandler 版本信息处理器
func (*VersionHandler) GetVersionInfo ¶ added in v0.2.0
func (h *VersionHandler) GetVersionInfo(c *gin.Context)
GetVersionInfo 获取版本信息
type VersionInfo ¶ added in v0.2.0
type VersionInfo struct {
Version string `json:"version"`
GitCommit string `json:"git_commit"`
BuildTime string `json:"build_time"`
}
VersionInfo 版本信息响应
Source Files
¶
- auth_handler.go
- chat_handler.go
- config_handler.go
- conversation_handler.go
- dashboard_handler.go
- dingtalk.go
- dingtalk_service.go
- dingtalk_stream.go
- dingtalk_stream_handler.go
- feishu_stream.go
- history_handler.go
- http.go
- log_handler.go
- mcp_handler.go
- service_handler.go
- service_manager.go
- user_handler.go
- version_handler.go