📝 refactor(prompts.js): Remove unused recall functionality and clean up response handler logic

🧹 chore(responseHandler.js): Simplify message type handling by eliminating deprecated recall case
🚧 cleanup(ai.js): Delete obsolete recall message handling function and related case statements
This commit is contained in:
Jerry 2025-11-24 13:43:37 +08:00
parent f0bd88eed3
commit 7619b01000
3 changed files with 1 additions and 37 deletions

View File

@ -351,10 +351,6 @@ async function sendResponse(e, messages) {
await handlePokeMessage(e, message); await handlePokeMessage(e, message);
break; break;
case 'recall':
await handleRecallMessage(e, message);
break;
default: default:
logger.warn(`[crystelf-ai] 不支持的消息类型: ${message.type}`); logger.warn(`[crystelf-ai] 不支持的消息类型: ${message.type}`);
} }
@ -432,16 +428,6 @@ async function handlePokeMessage(e, message) {
} }
} }
async function handleRecallMessage(e, message) {
try {
if (message.seq) {
await Message.deleteMsg(e, message.seq);
}
} catch (error) {
logger.error(`[crystelf-ai] 撤回消息失败: ${error.message}`);
}
}
//定期清理过期sessions //定期清理过期sessions
setInterval( setInterval(
async () => { async () => {

View File

@ -41,11 +41,7 @@ export const RESPONSE_FORMAT = `请严格按照以下格式按顺序返回你的
- code: 代码块(会自动渲染为高亮图片,必须有language参数指定编程语言) - code: 代码块(会自动渲染为高亮图片,必须有language参数指定编程语言)
- markdown: 需要渲染的markdown内容(会自动渲染为图片) - markdown: 需要渲染的markdown内容(会自动渲染为图片)
- memory: 存储记忆需要提供data(记忆内容,需要简明扼要)key(字符串数组,可以有多个关键词),timeout(遗忘世间,单位为天,建议一个月),重要:如果你认为本次用户说的话有一些值得记住的东西(例如用户希望你叫他什么,用户说她生日是多少多少等),那么使用本功能记住用户说的话 - memory: 存储记忆需要提供data(记忆内容,需要简明扼要)key(字符串数组,可以有多个关键词),timeout(遗忘世间,单位为天,建议一个月),重要:如果你认为本次用户说的话有一些值得记住的东西(例如用户希望你叫他什么,用户说她生日是多少多少等),那么使用本功能记住用户说的话
- recall: 撤回消息(需要提供seq),不常用,如果用户要求你撤回别人的消息可以使用
- emoji-like: 表情反应(需要提供id,表情id),给用户的提问回应emoji,跟meme不同
- ai-record: AI语音需要提供data,发送语音,不常用,用户要求你发语音的时候可以发,发的data需要简短,可以多条消息,但是不能太长 - ai-record: AI语音需要提供data,发送语音,不常用,用户要求你发语音的时候可以发,发的data需要简短,可以多条消息,但是不能太长
- like: 点赞某人需要提供id和num,如果用户需要
- file: 发送文件需要提供data和filename,如果你需要发一个很长的文本,请使用file发送
重要规则 重要规则
1. 必须返回JSON数组格式,一定要是数组!无论有多少条消息,一条消息也要是数组! 1. 必须返回JSON数组格式,一定要是数组!无论有多少条消息,一条消息也要是数组!

View File

@ -85,8 +85,6 @@ class ResponseHandler {
case 'memory': case 'memory':
await this.handleMemoryMessage(message, groupId,userId); await this.handleMemoryMessage(message, groupId,userId);
return null; return null;
case 'recall':
return this.handleRecallMessage(message);
default: default:
return this.handleNormalMessage(message); return this.handleNormalMessage(message);
} }
@ -106,9 +104,7 @@ class ResponseHandler {
return false; return false;
} }
const validTypes = [ const validTypes = [
'message', 'code', 'markdown', 'meme', 'at', 'poke', 'message', 'code', 'markdown', 'meme', 'at', 'poke','memory'
'recall', 'emoji-like', 'ai-record', 'function', 'like',
'file', 'memory'
]; ];
if (!validTypes.includes(message.type)) { if (!validTypes.includes(message.type)) {
logger.info(`[crystelf-ai] ai返回未知的type类型:${message.type}`) logger.info(`[crystelf-ai] ai返回未知的type类型:${message.type}`)
@ -140,13 +136,6 @@ class ResponseHandler {
} }
} }
handleRecallMessage(message) {
return {
type: 'recall',
seq: message.seq
};
}
//普通消息 //普通消息
handleNormalMessage(message) { handleNormalMessage(message) {
// 设置默认值 // 设置默认值
@ -160,17 +149,10 @@ class ResponseHandler {
if (message.id) processedMessage.id = message.id; if (message.id) processedMessage.id = message.id;
if (message.seq) processedMessage.seq = message.seq; if (message.seq) processedMessage.seq = message.seq;
if (message.num) processedMessage.num = message.num; if (message.num) processedMessage.num = message.num;
if (message.filename) processedMessage.filename = message.filename;
if (message.language) processedMessage.language = message.language; if (message.language) processedMessage.language = message.language;
return processedMessage; return processedMessage;
} }
//对上下文消息进行处理
handleChatHistory(message) {
let messageToHistory = [];
}
createErrorResponse(error) { createErrorResponse(error) {
const nickName = configControl.get('profile')?.nickName; const nickName = configControl.get('profile')?.nickName;
return [{ return [{