מאפייני משתמשים מתארים פלחים של בסיס המשתמשים, כמו העדפות שפה או מיקום גיאוגרפי. מערכת Analytics מתעדת באופן אוטומטי מאפייני משתמשים מסוימים. אם רוצים לאסוף מאפיינים נוספים, אפשר להגדיר עד 25 מאפייני משתמשים נוספים לכל פרויקט. במאמר מאפייני משתמשים בהתאמה אישית מוסבר איך להגדיר ולרשום מאפייני משתמשים.
מאפייני משתמשים משפרים את פילוח המשתמשים, אבל נתוני מאפייני המשתמשים זמינים בדרך כלל רק בצד השרת. Measurement Protocol מאפשר לכם להוסיף לנתוני המדידה בצד הלקוח נתונים בצד השרת. בדרך כלל, אי אפשר לעשות את זה רק באמצעות פתרונות בצד הלקוח.
שמות שמורים
חלק מהשמות של מאפייני המשתמשים שמורים ואי אפשר להשתמש בהם במדידות:
first_open_timefirst_visit_timelast_deep_link_referreruser_idfirst_open_after_install
בנוסף, שמות של מאפייני משתמשים לא יכולים להתחיל ב:
google_ga_firebase_
דוגמה לשימוש
בדוגמה הבאה, במערכת לניהול קשרי לקוחות (CRM) יש מאפיין משתמש (customer_tier) שרוצים להוסיף למדידות. אפשר להגדיר את customer_tier לאחד מהערכים premium או standard. כדי להוסיף את מאפיין המשתמש הזה לדוחות, צריך לבצע את הפעולות הבאות:
קודם כול, הלקוח שולח אירוע add_payment_info יחד עם קריאה ל-API של השרת שיש לו גישה למערכת ה-CRM:
קוד לקוח
FirebaseAnalytics.logEvent("add_payment_info")
ServerAPI.addCustomerTier(
FirebaseAnalytics.getAppInstanceId(),
"[{name: \"add_payment_info\"}"]
);
השרת שלכם מוסיף למדידה את customer_tierמאפיין המשתמש
באמצעות Measurement Protocol:
קוד שרת
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",
headers: {
"Content-Type": "application/json"
},
body: JSON.stringify({
"app_instance_id": "APP_INSTANCE_ID",
"user_properties": {
"customer_tier": {
"value": "CUSTOMER_TIER"
}
},
"events": JSON.parse(events)
})
});
}
מאפיין המשתמש הזה מדווח על שני הפלחים premium ו-standard.
במאמר בנושא שליחת אירועים מפורטות כל ההוראות לשליחת אירועים באמצעות Measurement Protocol.
חותמת זמן של ביטול
ב-Measurement Protocol נעשה שימוש בחותמת הזמן הראשונה שנמצאת ברשימה הבאה עבור כל מאפיין משתמש בבקשה:
- ה
timestamp_microsשל הרשומה ב-user_properties. timestamp_microsשל הבקשה.- השעה שבה Measurement Protocol מקבל את הבקשה.
בדוגמה הבאה נשלחת חותמת זמן ברמת הבקשה שחלה על כל מאפייני המשתמש בבקשה. כתוצאה מכך, Measurement Protocol מקצה למאפייני המשתמשים customer_tier ו-customer_group חותמת זמן של requestUnixEpochTimeInMicros.
{
"timestamp_micros": requestUnixEpochTimeInMicros,
"user_properties": {
"customer_tier": {
"value": customerTierValue
},
"customer_group": {
"value": customerGroupValue
}
}
}
בדוגמה הבאה נשלחת חותמת זמן ברמת הבקשה וגם חותמת זמן של מאפיין המשתמש customer_tier. כתוצאה מכך, Measurement Protocol מקצה ל-customer_tier חותמת זמן של customerTierUnixEpochTimeInMicros, ול-customer_group חותמת זמן של requestUnixEpochTimeInMicros.
"timestamp_micros": requestUnixEpochTimeInMicros,
"user_properties": {
"customer_tier": {
"value": customerTierValue,
"timestamp_micros": customerTierUnixEpochTimeInMicros
},
"customer_group": {
"value": customerGroupValue
}
}