الأحداث
الأحداث
Section titled الأحداثتتيح لك هذه الوحدة إدارة الأحداث والخصائص — وهي أزواج مفتاح/قيمة دائمة تُرفَق تلقائيًا بكل حدث يتم تتبّعه.
تُخزَّن الخصائص الفائقة محليًا وتُدمَج في حمولة كل حدث عند تتبّع الأحداث.
متاحة عبر:
tracker.analytics.events
المفاهيم
Section titled المفاهيمالخصائص الفائقة
Section titled الخصائص الفائقةتُخزَّن الخصائص الفائقة في حزمة SDK وتُدمَج في كل حدث ضمن properties.
خصائص الحدث
Section titled خصائص الحدثتُمرَّر خصائص الحدث فقط لاستدعاء واحد لـ track/sendEvent ولا تُحفَظ كخصائص فائقة.
المفاتيح المحجوزة
Section titled المفاتيح المحجوزةهذه المفاتيح محجوزة ولا يمكن إنشاؤها/إزالتها عبر دوال مساعدة الخصائص الفائقة:
propertiestokentimestamp
التوقيعات عالية المستوى
Section titled التوقيعات عالية المستوى// Track an event.
// The `properties` argument is per-event only (not persisted).
tracker.analytics.events.sendEvent(eventName: string, properties?: Record<string, any>, options?: { send_immediately: boolean })
// Create/update super properties (persisted)
tracker.analytics.events.setProperty(name: string, value: any): void
tracker.analytics.events.setProperty(properties: Record<string, any>): void
// Create super properties only if they don't exist yet (persisted)
tracker.analytics.events.setPropertiesOnce(name: string, value: any): void
tracker.analytics.events.setPropertiesOnce(properties: Record<string, any>): void
// Remove super properties (persisted)
tracker.analytics.events.unsetProperties(name: string): void
tracker.analytics.events.unsetProperties(names: string[]): void
// Clear all super properties
tracker.analytics.events.reset(): void
تتبّع الأحداث مع الخصائص
Section titled تتبّع الأحداث مع الخصائصالخصائص الخاصة بكل حدث (غير دائمة)
Section titled الخصائص الخاصة بكل حدث (غير دائمة)tracker.analytics.events.sendEvent("Button Clicked", {
button_text: "Start",
page: "home",
})
تنطبق هذه الخصائص على هذا الحدث فقط.
الخصائص الفائقة + الخصائص الخاصة بكل حدث (مدمجة)
Section titled الخصائص الفائقة + الخصائص الخاصة بكل حدث (مدمجة)عند تعيين خصائص فائقة، تُضمَّن تلقائيًا في كل حدث ثم تُدمَج مع الخصائص الخاصة بكل حدث:
tracker.analytics.events.setProperty({
app_version: "1.42.0",
env: "prod",
})
tracker.analytics.events.sendEvent("Signup Started", {
// per-event, can override a super property with the same key
plan: "pro",
})
ترتيب الدمج:
- تُضاف الخصائص الفائقة أولًا
- تُدمَج الخصائص الخاصة بكل حدث فوقها
لذلك تفوز الخصائص الخاصة بكل حدث عند تعارض المفاتيح.
setProperty
Section titled setPropertyتُنشئ أو تُعيد كتابة الخصائص الفائقة.
// object form
tracker.analytics.events.setProperty({
app_version: "1.42.0",
region: "eu",
})
// key/value form
tracker.analytics.events.setProperty("build_sha", "3f2c9a1")
ملاحظات:
Section titled ملاحظات:- يتم تجاهل المفاتيح الافتراضية/الداخلية (التي يتتبّعها SDK) ولن تُضاف كخصائص فائقة.
- تُحفَظ التغييرات محليًا فقط إذا تغيّر شيء بالفعل.
setPropertiesOnce
Section titled setPropertiesOnceتُنشئ خصائص فائقة فقط إذا لم تكن موجودة بعد.
tracker.analytics.events.setPropertiesOnce({
first_seen_at: Date.now(),
signup_source: "docs",
})
// key/value form
tracker.analytics.events.setPropertiesOnce("initial_referrer", document.referrer)
ملاحظات:
Section titled ملاحظات:- لا تُعيَّن الخصائص إلا إذا كان المفتاح مفقودًا.
- يتم تجاهل المفاتيح المحجوزة (
propertiesوtokenوtimestamp).
unsetProperties
Section titled unsetPropertiesتُزيل واحدة أو أكثر من الخصائص الفائقة.
// single
tracker.analytics.events.unsetProperties("region")
// multiple
tracker.analytics.events.unsetProperties(["app_version", "build_sha"])
ملاحظات:
Section titled ملاحظات:- لا يمكن إزالة المفاتيح المحجوزة.
- الإزالة دائمة.
reset
Section titled resetتمسح جميع الخصائص الفائقة.
tracker.analytics.events.reset()
الإرسال الفوري
Section titled الإرسال الفوريافتراضيًا، توضع الأحداث في قائمة انتظار/تُجمَّع على دفعات. يمكنك طلب إرسال فوري لحدث:
tracker.analytics.events.sendEvent(
"Checkout Completed",
{ value: 199, currency: "EUR" },
{ send_immediately: true },
)
الأسماء المستعارة المتوافقة مع Mixpanel
Section titled الأسماء المستعارة المتوافقة مع Mixpanelتدعم جميع الدوال طبقة توافق مُتاحة للتيسير على المستخدمين:
tracker.analytics.events.register // setProperty
tracker.analytics.events.register_once // setPropertiesOnce
tracker.analytics.events.unregister // unsetProperties
tracker.analytics.events.track // sendEvent
هل لديك أسئلة؟
Section titled هل لديك أسئلة؟إذا واجهت أي مشكلات، انضمّ إلى Slack الخاص بنا أو اطّلع على المنتدى واحصل على المساعدة من مجتمعنا.