Właściwości użytkownika opisują segmenty Twoich użytkowników, np. ich ustawienia języka czy ich położenie geograficzne. Analytics automatycznie rejestruje niektóre właściwości użytkownika. Jeśli chcesz rejestrować dodatkowe usługi, możesz skonfigurować 25 dodatkowych użytkowników, usług na projekt. Zapoznaj się z artykułem Niestandardowe właściwości użytkownika, aby dowiedzieć się, jak ustawiać i konfigurować rejestrować właściwości użytkownika.
Właściwości użytkownika ulepszają segmentację użytkowników, ale dane właściwości użytkownika są często tylko dostępnych po stronie serwera. Measurement Protocol umożliwia pomiarów po stronie klienta za pomocą danych po stronie serwera, co jest zazwyczaj niewykonalne. przy użyciu rozwiązań po stronie klienta.
Zarezerwowane nazwy
Niektóre nazwy właściwości użytkownika są zarezerwowane i nie można ich używać w pomiarach:
first_open_timefirst_visit_timelast_deep_link_referreruser_idfirst_open_after_install
Oprócz tego nazwy właściwości użytkownika nie mogą się zaczynać od:
google_ga_firebase_
Przykład użycia
W poniższym przykładzie Twój system CRM zawiera właściwość użytkownika (customer_tier),
które chciałaby dodać
do pomiarów. W polu customer_tier można ustawić jedną z tych wartości:
premium lub standard. Aby wyświetlić tę właściwość użytkownika w raportach,
następujące:
Najpierw poproś klienta o wysłanie zdarzenia add_payment_info wraz z wywołaniem
API serwera z dostępem do Twojego systemu CRM:
kod klienta
FirebaseAnalytics.logEvent("add_payment_info")
ServerAPI.addCustomerTier(
FirebaseAnalytics.getAppInstanceId(),
"[{name: \"add_payment_info\"}"]
);
Następnie serwer uzupełnia pomiary o właściwość użytkownika customer_tier.
za pomocą Measurement Protocol:
kod serwera
const firebaseAppId = "FIREBASE_APP_ID";
const apiSecret = "API_SECRET";
function addCustomerTier(appInstanceId, events) {
// Request the customer tier from the CRM.
const customerTier = getCustomerTier(appInstanceId);
const queryParams = `?firebase_app_id=${firebaseAppId}&api_secret=${apiSecret}`;
fetch(`https://www.google-analytics.com/mp/collect${queryParams}`, {
method: "POST",
body: JSON.stringify({
"app_instance_id": "APP_INSTANCE_ID",
"user_properties": {
"customer_tier": {
"value": "CUSTOMER_TIER"
}
},
"events": JSON.parse(events)
})
});
}
Ta właściwość użytkownika zgłasza 2 segmenty: premium i standard.
Więcej informacji o wysyłaniu zdarzeń za pomocą Measurement Protocol.
Zastąp sygnaturę czasową
Measurement Protocol używa pierwszej sygnatury czasowej, którą znajdzie w następujących miejscach: dla każdej właściwości użytkownika w żądaniu:
- Wartość
timestamp_microswpisu wuser_properties. timestamp_microsżądania.- Godzina otrzymania żądania przez platformę Measurement Protocol.
Poniższy przykład wysyła sygnaturę czasową na poziomie żądania dotyczącą wszystkich
właściwości użytkownika w żądaniu. W efekcie Measurement Protocol przypisuje
zarówno właściwości użytkownika customer_tier, jak i customer_group mają sygnaturę czasową
requestUnixEpochTimeInMicros
{
"timestamp_micros": requestUnixEpochTimeInMicros,
"user_properties": {
"customer_tier": {
"value": customerTierValue
},
"customer_group": {
"value": customerGroupValue
}
}
}
Poniższy przykład wysyła zarówno sygnaturę czasową na poziomie żądania, jak i sygnaturę czasową
właściwość użytkownika customer_tier. W efekcie Measurement Protocol przypisuje
customer_tier to sygnatura czasowa customerTierUnixEpochTimeInMicros, a element
customer_group sygnatura czasowa requestUnixEpochTimeInMicros.
"timestamp_micros": requestUnixEpochTimeInMicros,
"user_properties": {
"customer_tier": {
"value": customerTierValue,
"timestamp_micros": customerTierUnixEpochTimeInMicros
},
"customer_group": {
"value": customerGroupValue
}
}