зменен способ отправки целевых событий на window.graspil.push()

This commit is contained in:
kazachilo 2025-03-28 13:36:49 +03:00
parent 62c03fd34b
commit c91fce6e8b

View File

@ -109,67 +109,37 @@ export const trackRejectedPrompt = (originalPrompt: string): void => {
* @param value - Общая цена (опционально) * @param value - Общая цена (опционально)
* @param unit - Код валюты (опционально, обязательно если указан value) * @param unit - Код валюты (опционально, обязательно если указан value)
*/ */
export const sendTargetEvent = async ( export const sendTargetEvent = (
targetId: number, targetId: number,
userId: number, userId: number,
value?: number, value?: number,
unit?: string unit?: string
): Promise<void> => { ): void => {
try { if (typeof window !== 'undefined' && window.graspil) {
const date = new Date().toISOString(); // Текущая дата в формате ISO 8601 // Создаем объект события в формате, который ожидает graspil.push
const eventData: {
const payload: { event: string;
target_id: number; category: string;
user_id: number; value_num?: number;
date: string;
value?: number;
unit?: string; unit?: string;
} = { } = {
target_id: targetId, event: `Целевое событие ID: ${targetId}`,
user_id: userId, category: `target_${targetId}`, // Используем ID цели как категорию
date: date
}; };
// Добавляем value и unit, если они указаны // Добавляем value и unit, если они указаны
if (value !== undefined) { if (value !== undefined) {
payload.value = value; eventData.value_num = value;
if (unit) { if (unit) {
payload.unit = unit; eventData.unit = unit;
} }
} }
// Логируем для отладки
console.log('Отправка целевого события через graspil.push:', eventData);
// Логируем отправляемые данные // Отправляем событие
console.log('Отправка целевого события:', { window.graspil.push(eventData);
url: 'https://api.graspil.com/v1/send-target',
method: 'POST',
payload
});
// Отправляем запрос на сервер
const response = await fetch('https://api.graspil.com/v1/send-target', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Api-Key': '3bb78a396b0aa436843d606d02abfe4c'
},
body: JSON.stringify(payload)
});
// Логируем статус ответа
console.log('Статус ответа:', response.status, response.statusText);
const data = await response.json();
// Логируем полученные данные
console.log('Ответ сервера:', data);
if (!data.ok) {
console.error('Ошибка при отправке целевого события:', data.error);
} else {
console.log('Целевое событие успешно отправлено');
}
} catch (error) {
console.error('Ошибка при отправке целевого события:', error);
} }
}; };