зменен способ отправки целевых событий на window.graspil.push()
This commit is contained in:
parent
62c03fd34b
commit
c91fce6e8b
@ -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('Отправка целевого события:', {
|
console.log('Отправка целевого события через 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', {
|
window.graspil.push(eventData);
|
||||||
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);
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user