diff --git a/src/services/message-validator.ts b/src/services/message-validator.ts index fdb6747..38035a9 100644 --- a/src/services/message-validator.ts +++ b/src/services/message-validator.ts @@ -106,9 +106,17 @@ export class MessageValidator { return { isValid: false, errors }; } - // Vérifier le type du contenu - if (typeof message.content !== 'object') { - errors.push('Content must be an object'); + // Vérifier le type du contenu - peut être un objet ou une string JSON + if (typeof message.content === 'string') { + // Parser le contenu JSON si c'est une string + try { + message.content = JSON.parse(message.content); + } catch (error) { + errors.push('Content must be valid JSON if it is a string'); + return { isValid: false, errors }; + } + } else if (typeof message.content !== 'object') { + errors.push('Content must be an object or valid JSON string'); return { isValid: false, errors }; }