Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # Документация по Itsumma
- ## POST /api/entr/
- ### Основная задача
- Возвращает уникальную метку пользователя.
- > Служит для того чтобы связать запросы пользователя с самим пользователем, и в письмах к техподдержке указывать новый ли это пользователь или нет, и показывать все запросы этого пользователя
- Хранится в **entrances**
- Уникальность пользователя определяется по **php** сессии либо по **itss** метке.
- Если у пользователя нет **php** сессии и **itss** метки, то такой пользователь считается новым и ему генерируется новая **itss** метка.
- **itss** метка хранится в базе данных на бэкенде.
- Вызывается в app.js, при каждой загрузки страницы.
- ### Побочная задача
- Проверяет **utm** метки
- > Служат для того чтобы проверят пришёл ли пользователь с рекламы и в письме к техподдержке указывать, что пользователь пришёл с рекламы.
- > Также в письме к техподдержке указывать, был ли запрос от пользователя с рекламы первый
- Хранятся в **utm_source_itsses**, **utm_sources**, **utm_values**
- **utm_source_itsses** - Хранит в себе связь между **utm** меткой и **itss** пользоватля
- **utm_sources** - Хранит уникальные **utm** метки
- **utm_values** - Хранит все **utm** метки пользователя
- ### Примечание
- > **/api/entr/** Нельзя кешировать в nginx, так как при кешировании не будет исполняться php скрипт, который выставляет itss метку.
- ### Схема выполнения запроса
- ```mermaid
- graph
- A[Запрос пользователя] --к nginx] --> B{cache}
- B -- html --> A
- A -- app.js --> C(POST /api/entr/((Circle))
- A --> C(Round Rect)
- CB --> D{cookie, itss or session ?}
- D -- - --> G[генерируем новый itss]
- D -- + --> F[устанавливаем старые itss]
- D --> R{utm метки?}
- R -- + --> Q[Зписываем в UtmSourceItss пользователя с меткой.<br> В UtmValue добавляем все метки из запроса.]
- F --> A
- G --> ARhombus}
- C --> A(Round Rect)
- C --> D Link text --> B{asddsa}
- ```
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement