# Pageview - Stopview

# Giới thiệu

  • Pageview là event bắn lên TA với mục đích thông báo page nào vừa được người dùng tải xong, là event được bắn lên đầu tiên.
  • Pageview (hay còn gọi là Page Impression) có thể được dịch là Lượt xem trang, là một thuật ngữ phổ biến trong ngôn ngữ website, được dùng để mô tả số lần người dùng yêu cầu tải một tập tin HTML (dữ liệu của một trang web bất kỳ) trên một trang web nào đó thông qua mạng Internet. Pageview là một trong những loại Visitor Engagement – Tương tác người dùng trên trang phổ biến nhất.
  • Stopview, được tự động gửi lên khi user rời khỏi trang (chuyển trang khác, refresh, tắt trang). Hành động này sẽ gắn liền với pageview, để giúp tracking thời gian online của user, cũng như trạng thái online|offline của họ.

# Trigger

  • pageview: Truy cập vào bất cứ trang nào trong websites topcv.vn đều sẽ trigger pageview.
  • stopview: Refresh, chuyển trang tại bất cứ trang nào sẽ trigger stopview.

# Schema

# Host

GET /collect-sse 

# Lưu ý

  • Tại đây sử dụng Server Sent Event để giữ kết nối giữa client và server.
  • Do SSE chỉ hỗ trợ phương thức GET nên data gửi lên sẽ nằm trên params.
  • Đường dẫn sẽ bao gồm data cần gửi đã encode thành JSON string, startEvent (pageview) và endEvent(stopview).
  • 2 request tracking sẽ được tự động gửi lên dataplatform lần lượt khi client kết nối và ngắt kết nối.

# VD về url chuẩn

http://localhost:3333/collect-sse?data=%7B%22u_s%22%3Anull%2C%22u_m%22%3Anull%2C%22u_c%22%3Anull%2C%22referer%22%3A%22%22%2C%22c_id%22%3A%22T5YVtrvrhr.1631088202633%22%2C%22w%22%3A1920%2C%22h%22%3A1080%2C%22p_f%22%3A%22Linux%20x86_64%22%2C%22a_v%22%3A%225.0%20(X11%3B%20Linux%20x86_64)%20AppleWebKit%2F537.36%20(KHTML%2C%20like%20Gecko)%20Chrome%2F93.0.4577.63%20Safari%2F537.36%22%2C%22host%22%3A%22topcv.local%22%2C%22hrf%22%3A%22http%253A%252F%252Ftopcv.local%252Fviec-lam%22%2C%22o%22%3A%22http%3A%2F%2Ftopcv.local%22%2C%22p_n%22%3A%22%2Fviec-lam%22%2C%22q%22%3A%7B%7D%2C%22type%22%3A%22pageview%22%2C%22u_id%22%3A%223605538%22%2C%22id%22%3A%22topcv_vn%22%2C%22src%22%3A%22SuggestSimilarJob%22%2C%22tab_id%22%3A%226e8yWkyOuF%22%7D&startEvent=pageview&endEvent=stopview

# Request body

Key Desc
hrf Url pageview
type pageview - stopview
p_id Process Id, sử dụng để tracking online time của một process
u_s string - null
u_c string - null
u_m string - null
ta_source string - null
v_t long - View time, tính bằng millisecond. Chỉ áp dụng cho stopview
Required Info Schema Xem thông tin bắt buộc

# Sample data gửi lên data platform

{
    "referer":"", // Link refer
    "c_id":"PiF4jWA3zn.1616045720242", // Client ID
    "w":1536, // Chiều rộng màn hình
    "h":960, // Chiều cao màn hình
    "p_f":"MacIntel", // Platform
    "a_v":"5.0 (Macintosh; Intel Mac OS X 11_1_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36", // App version, thông tin client
    "host":"www.topcv.vn", // Địa chỉ gắn TA
    "hrf":"https://www.topcv.vn/viec-lam", // Url pageview
    "o":"https://www.topcv.vn", // Domain gắn Ta
    "p_n":"/viec-lam", // Path name
    "q":{}, // Query string
    "type":"pageview",
    "u_id":"268170", // User TopCV
    "id":"topcv_vn", // Id
    "src":"quyettv", // Refer Source, ví dụ Banner Home, Banner Right,..
    "tab_id":"9XpxVjERkQ" // Browser Tab Id
    "ta_source": "marketing",
    "u_s": "marketing",
    "u_c": "marketing",
    "ta_source": "marketing",
    "v_t": 10000 // 10s
    "p_id": "d76cd5af-da7a-45ca-b792-62ba4b79e593" // process id, mapping giữa 1 cặp pageview và stopview
}