ваше сообщение коммита
This commit is contained in:
@@ -554,31 +554,35 @@ router.post('/link-identity', async (req, res) => {
|
||||
});
|
||||
|
||||
// Проверка статуса аутентификации
|
||||
router.get('/check', (req, res) => {
|
||||
router.get('/check', async (req, res) => {
|
||||
try {
|
||||
console.log('Сессия при проверке:', req.session);
|
||||
|
||||
const authenticated = req.session.authenticated || req.session.isAuthenticated || false;
|
||||
const userId = req.session.userId;
|
||||
const authType = req.session.authType;
|
||||
const address = req.session.address;
|
||||
const telegramId = req.session.telegramId;
|
||||
const email = req.session.email;
|
||||
|
||||
// Проверяем, является ли пользователь администратором
|
||||
const isAdmin = req.session.userRole === 'admin';
|
||||
// Если пользователь не аутентифицирован, возвращаем базовую информацию
|
||||
if (!req.session.authenticated) {
|
||||
return res.json({
|
||||
authenticated: false,
|
||||
userId: null,
|
||||
authType: null,
|
||||
address: null,
|
||||
telegramId: null,
|
||||
email: null,
|
||||
isAdmin: false
|
||||
});
|
||||
}
|
||||
|
||||
// Возвращаем полную информацию об аутентифицированном пользователе
|
||||
res.json({
|
||||
authenticated,
|
||||
userId,
|
||||
isAdmin,
|
||||
authType,
|
||||
address,
|
||||
telegramId,
|
||||
email
|
||||
authenticated: true,
|
||||
userId: req.session.userId,
|
||||
authType: req.session.authType,
|
||||
address: req.session.address,
|
||||
telegramId: req.session.telegramId,
|
||||
email: req.session.email,
|
||||
isAdmin: req.session.isAdmin || false
|
||||
});
|
||||
} catch (error) {
|
||||
console.error('Error checking auth:', error);
|
||||
console.error('Error checking auth status:', error);
|
||||
res.status(500).json({ error: 'Internal server error' });
|
||||
}
|
||||
});
|
||||
|
||||
@@ -44,19 +44,29 @@ async function processGuestMessages(userId, guestId) {
|
||||
for (const guestMessage of guestMessages) {
|
||||
console.log(`Processing guest message ID ${guestMessage.id}: ${guestMessage.content}`);
|
||||
|
||||
// Проверяем существование гостевого сообщения перед созданием связанного сообщения
|
||||
const checkGuestMessage = await db.query(
|
||||
'SELECT id FROM guest_messages WHERE id = $1',
|
||||
[guestMessage.id]
|
||||
);
|
||||
|
||||
if (checkGuestMessage.rows.length === 0) {
|
||||
console.log(`Guest message ${guestMessage.id} no longer exists, skipping`);
|
||||
continue;
|
||||
}
|
||||
|
||||
// Сохраняем сообщение пользователя
|
||||
const userMessageResult = await db.query(
|
||||
`INSERT INTO messages
|
||||
(conversation_id, content, sender_type, role, guest_message_id, channel, created_at)
|
||||
(conversation_id, content, sender_type, role, channel, created_at)
|
||||
VALUES
|
||||
($1, $2, $3, $4, $5, $6, $7)
|
||||
($1, $2, $3, $4, $5, $6)
|
||||
RETURNING *`,
|
||||
[
|
||||
conversation.id,
|
||||
guestMessage.content,
|
||||
'user',
|
||||
'user',
|
||||
guestMessage.id,
|
||||
'web',
|
||||
guestMessage.created_at
|
||||
]
|
||||
@@ -73,28 +83,27 @@ async function processGuestMessages(userId, guestId) {
|
||||
// Сохраняем ответ от ИИ
|
||||
const aiMessageResult = await db.query(
|
||||
`INSERT INTO messages
|
||||
(conversation_id, content, sender_type, role, guest_message_id, channel, created_at)
|
||||
(conversation_id, content, sender_type, role, channel, created_at)
|
||||
VALUES
|
||||
($1, $2, $3, $4, $5, $6, $7)
|
||||
($1, $2, $3, $4, $5, $6)
|
||||
RETURNING *`,
|
||||
[
|
||||
conversation.id,
|
||||
aiResponse,
|
||||
'assistant',
|
||||
'assistant',
|
||||
guestMessage.id,
|
||||
'web',
|
||||
new Date()
|
||||
]
|
||||
);
|
||||
|
||||
console.log(`Saved AI response with ID ${aiMessageResult.rows[0].id}`);
|
||||
|
||||
// Удаляем обработанное гостевое сообщение
|
||||
await db.query('DELETE FROM guest_messages WHERE id = $1', [guestMessage.id]);
|
||||
console.log(`Deleted processed guest message ${guestMessage.id}`);
|
||||
}
|
||||
|
||||
// Удаляем гостевые сообщения, так как они уже обработаны
|
||||
await db.query('DELETE FROM guest_messages WHERE guest_id = $1', [guestId]);
|
||||
console.log('Deleted processed guest messages');
|
||||
|
||||
return {
|
||||
success: true,
|
||||
message: `Processed ${guestMessages.length} guest messages`,
|
||||
|
||||
@@ -18,8 +18,8 @@ async function checkOllamaModels() {
|
||||
});
|
||||
|
||||
console.log('\nДля использования конкретной модели, укажите ее в .env файле:');
|
||||
console.log('OLLAMA_EMBEDDINGS_MODEL=mistral');
|
||||
console.log('OLLAMA_MODEL=mistral');
|
||||
console.log('OLLAMA_EMBEDDINGS_MODEL=mistral:7b-instruct-q4_K_M');
|
||||
console.log('OLLAMA_MODEL=mistral:7b-instruct-q4_K_M');
|
||||
} else {
|
||||
console.log('Не удалось получить список моделей');
|
||||
}
|
||||
|
||||
@@ -7,7 +7,7 @@ const fetch = require('node-fetch');
|
||||
class AIAssistant {
|
||||
constructor() {
|
||||
this.baseUrl = process.env.OLLAMA_BASE_URL || 'http://localhost:11434';
|
||||
this.defaultModel = process.env.OLLAMA_MODEL || 'mistral';
|
||||
this.defaultModel = process.env.OLLAMA_MODEL || 'mistral:7b-instruct-q4_K_M';
|
||||
}
|
||||
|
||||
// Создание экземпляра ChatOllama с нужными параметрами
|
||||
|
||||
Reference in New Issue
Block a user