Files
memind/miniapp/utils/messages.js

42 lines
1016 B
JavaScript

function createUserMessage(text) {
return {
id: `mp_${Date.now()}_${Math.random().toString(16).slice(2)}`,
role: 'user',
created: Math.floor(Date.now() / 1000),
content: [{ type: 'text', text }],
metadata: {
source: 'wechat-miniapp',
userVisible: true,
agentVisible: true,
displayText: text
}
};
}
function messageText(message) {
if (!message) return '';
if (typeof message.text === 'string') return message.text;
if (Array.isArray(message.content)) {
return message.content
.filter((part) => part && part.type === 'text')
.map((part) => part.text || '')
.join('');
}
return '';
}
function normalizeMessages(messages = []) {
return messages.map((message) => ({
id: message.id || `${message.role}_${message.created || Date.now()}`,
role: message.role || 'assistant',
text: messageText(message),
created: message.created || 0
}));
}
module.exports = {
createUserMessage,
messageText,
normalizeMessages
};