n8n-nodes-openai-analytics
Version:
n8n node for OpenAI Analytics
32 lines • 1.34 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.addMessage = void 0;
async function addMessage(context) {
const { openai, functionThis, i } = context;
const threadId = functionThis.getNodeParameter('threadId', i);
const messageRole = functionThis.getNodeParameter('messageRole', i);
const messageContent = functionThis.getNodeParameter('messageContent', i);
const fileIdsString = functionThis.getNodeParameter('fileIds', i, '');
// 파일 IDs 처리
const fileIds = fileIdsString ? fileIdsString.split(',').map(id => id.trim()) : [];
// Add message to thread - 타입 단언을 사용하여 file_ids 처리
const messageParams = {
role: messageRole,
content: messageContent,
};
// file_ids가 있는 경우에만 attachments 추가
if (fileIds.length > 0) {
// V2 API에서는 file_ids 대신 attachments를 사용
messageParams.attachments = fileIds.map(fileId => ({
file_id: fileId,
tools: [{ type: 'code_interpreter' }]
}));
}
// 타입 단언을 사용하여 API 호출
const message = await openai.beta.threads.messages.create(threadId, messageParams);
return {
json: { ...message }
};
}
exports.addMessage = addMessage;
//# sourceMappingURL=addMessage.js.map