PostHog، Mixpanel & Amplitude سے رابطہ

آپ کا پروڈکٹ اینالیٹکس ٹول بتاتا ہے کہ کیا ہوا۔ MousePlayer دکھاتا ہے کہ کیوں۔ یہ رابطہ دونوں نظاموں کو دونوں سمتوں میں جوڑتا ہے، تاکہ فنل میں چھوٹ جانے کی وجہ بتانے والی ریکارڈنگ صرف ایک کلک دور ہو۔

1. مسئلہ: چہروں کے بغیر اعداد

پروڈکٹ اینالیٹکس آپ کو فنل دکھاتا ہے: 1,000 صارف چیک آؤٹ تک پہنچے، 620 اسے چھوڑ گئے۔ یہ اس مسئلے کی درست پیمائش ہے جو ابھی آپ کو دکھائی نہیں دیتا۔ ان 620 ریکارڈنگز میں سے چند دیکھنے سے عموماً چند منٹ میں جواب مل جاتا ہے — بشرطیکہ آپ IDs برآمد کیے اور ہاتھ سے تلاش کیے بغیر چارٹ سے متعلقہ سیشنز تک پہنچ سکیں۔

یہ پروڈکٹ اینالیٹکس رابطہ اس خلا کو ختم کرتا ہے۔ یہ اس کے اندر چلتا ہے: mp.js اور دونوں نظاموں کو خودکار طور پر جوڑتا ہے:

  • باہر جانے والی سمت: آپ کا اینالیٹکس ٹول جو بھی ایونٹ ریکارڈ کرتا ہے، اس میں یہ پراپرٹی ہوتی ہے: mouseplayer_session_url۔ کوئی بھی ایونٹ کھولیں، لنک پر کلک کریں اور سیشن دیکھیں۔
  • اندر آنے والی سمت: ملاحظہ کار کی یہ شناخت distinct_id واپس پڑھی جاتی ہے اور MousePlayer سیشن میں محفوظ ہوتی ہے، اس لیے آپ اسی شناخت سے ریکارڈنگز تلاش کر سکتے ہیں جو پہلے سے PostHog، Mixpanel یا Amplitude میں استعمال کرتے ہیں۔

کسی کوڈ کی ضرورت نہیں۔ رابطہ اینالیٹکس SDK کو خود پہچان لیتا ہے۔ آپ کو MousePlayer کا کوئی فنکشن کال کرنے یا ایونٹس ٹریک کرنے کا طریقہ بدلنے کی ضرورت نہیں۔

2. فعال کرنا

طریقہ A: ڈیشبورڈ (بغیر کوڈ)

  1. اپنا پروجیکٹ کھولیں اور اس ٹیب پر جائیں: انضمامات۔
  2. یہ اختیار PostHog، Mixpanel & Amplitude سے رابطہ اس حالت پر کریں: ON۔
  3. اپنا استعمال کردہ پلیٹ فارم منتخب کریں۔ تبدیلیاں خودکار طور پر محفوظ ہو جاتی ہیں۔

ترتیب آپ کی ویب سائٹ پر اگلی بار صفحہ لوڈ ہونے سے نافذ ہوتی ہے۔ پہلے سے موجود سیشنز پر اس کا سابقہ اثر نہیں ہوتا۔

طریقہ B: اسکرپٹ کی دستی ترتیب

اگر آپ اسے براہِ راست کوڈ میں لکھنا چاہتے ہیں تو اس کے اندر دونوں قدریں مقرر کریں: window.mp_config:

<!-- MousePlayer SDK with the Product Analytics Bridge enabled --> <script> window.mp_config = { channel: 'YOUR_CHANNEL_ID', analytics_bridge_active: true, analytics_provider: 'posthog' // 'posthog', 'mixpanel' or 'amplitude' }; </script>

3. ہر پلیٹ فارم پر کیا ہوتا ہے

ہر پلیٹ فارم مختلف API فراہم کرتا ہے، اس لیے رابطہ ہر ایک کی موزوں کال استعمال کرتا ہے۔ اس کی الگ ترتیب درکار نہیں — یہ آپ کے منتخب فراہم کنندہ کے مطابق چلتا ہے۔

پلیٹ فارمباہر جانے والی سمت (ریکارڈنگ کا URL)اندر آنے والی سمت (شناخت)
PostHog posthog.register() — سپر پراپرٹی کے طور پر رجسٹر ہوتا ہے، اس لیے اس کے بعد ہر ایونٹ کے ساتھ شامل ہوتا ہے posthog.get_distinct_id()
Mixpanel mixpanel.register() — سپر پراپرٹی والا یہی طرزِ عمل mixpanel.get_distinct_id()
Amplitude setUserProperties() — صارف کی پراپرٹی کے طور پر مقرر ہوتا ہے getDeviceId()، جبکہ پرانے SDK میں متبادل یہ ہے: getInstance().options.deviceId۔

سپر پراپرٹی اور صارف کی پراپرٹی میں فرق: PostHog اور Mixpanel میں ریکارڈنگ کا URL آئندہ ایونٹس کے ساتھ شامل ہوتا ہے، اس لیے رابطہ شروع ہونے کے بعد چلنے والے ہر ایونٹ میں ملتا ہے — صفحہ لوڈ ہونے کے دوران پہلے بھیجے گئے ایونٹس میں نہیں۔

4. شناخت: distinct_id سے نام والے سیشن تک

اندر آنے والی سمت وہ حصہ ہے جس کی اہمیت اکثر ٹیمیں کم سمجھتی ہیں۔ اس کے بغیر MousePlayer سیشنز بےنام ہوتے ہیں: آپ انہیں دیکھ سکتے ہیں، مگر یہ درخواست پوری نہیں کر سکتے: “اس اکاؤنٹ کی ریکارڈنگز دکھائیں جو پچھلے ہفتے چھوڑ گیا تھا۔”

رابطہ فعال ہونے پر آپ کے اینالیٹکس ٹول کا distinct_id سیشن کے اس خانے میں لکھا جاتا ہے: custom_user_id — یہ وہی خانہ ہے جس میں دستی SDK کال لکھتی ہے:

// The manual equivalent - you do NOT need this when the bridge is active mp('set', { user_id: 'your-internal-id' });

اگر آپ پہلے ہی خود یہ کال کرتے ہیں: mp('set') تو اسے جاری رکھیں۔ آپ کی واضح طور پر فراہم کردہ شناخت زیادہ قابلِ اعتماد ہے، کیونکہ یہ آپ کی اپنی بنیادی کلید ہے، ہر براؤزر کے لیے الگ اینالیٹکس شناخت کنندہ نہیں۔

رازداری کی وضاحت: صرف وہ شناخت کنندہ منتقل ہوتا ہے جو آپ کا اینالیٹکس ٹول پہلے ہی مقرر کر چکا ہے۔ SDK سے ایمیل پتہ، نام یا کوئی اور ذاتی خانہ نہیں پڑھا جاتا۔ یقینی بنائیں کہ آپ کی اپنی رازداری کی پالیسی اس پروسیسنگ کا احاطہ کرتی ہو، اور اگر آپ رضامندی کو قانونی بنیاد بناتے ہیں تو ٹریکنگ اسکرپٹ کو اپنے رضامندی کے ٹول کی اجازت کے بعد چلائیں۔

5. تکنیکی طرزِ عمل

اینالیٹکس SDKs عموماً غیر ہم وقت لوڈ ہوتے ہیں، اکثر اس کے بعد جب mp.js پہلے ہی چل رہا ہو۔ اس لیے آغاز پر صرف ایک کوشش بیشتر حقیقی ویب سائٹس پر ناکام ہو جائے گی۔

  • رابطہ ہر 1.5 سیکنڈ بعد، زیادہ سے زیادہ دس بار دوبارہ کوشش کرتا ہے اور دونوں سمتیں مکمل ہوتے ہی رک جاتا ہے۔
  • ہر سمت الگ مکمل ہوتی ہے، اس لیے شناخت دستیاب ہونے کے انتظار میں ریکارڈنگ کا URL دوبارہ نہیں بھیجا جاتا۔
  • اگر SDK کبھی دستیاب نہ ہو تو رابطہ تقریباً 15 سیکنڈ بعد خاموشی سے رک جاتا ہے۔ کنسول میں کچھ نہیں لکھا جاتا اور سیشن کی ریکارڈنگ معمول کے مطابق جاری رہتی ہے۔
  • 128 حروف سے طویل شناخت کنندگان کاٹنے کے بجائے نظرانداز کیے جاتے ہیں، تاکہ آدھی شناخت محفوظ نہ ہو جس کا کسی چیز سے میل نہ ہو سکے۔

6. کام کرنے کی تصدیق

  1. اپنی ویب سائٹ عام براؤزر ٹیب میں کھولیں اور تھوڑی دیر استعمال کریں۔
  2. اپنے اینالیٹکس ٹول میں تازہ ترین ایونٹ کھولیں اور یہ پراپرٹی تلاش کریں: mouseplayer_session_url۔ اسے کھولنے سے آپ براہِ راست ریکارڈنگ تک پہنچنے چاہییں۔
  3. MousePlayer میں یہ کھولیں: صارف ایکسپلورر۔ شناخت رکھنے والے سیشنز میں خودکار بنائے گئے ملاحظہ کار کے عرفی نام کی جگہ وہ شناخت دکھائی دیتی ہے۔

اگر کچھ دکھائی نہ دے

  • تمام ایونٹس میں پراپرٹی غائب ہے: دیکھیں کہ اینالیٹکس SDK واقعی صفحے پر لوڈ ہو رہا ہو اور آپ نے درست پلیٹ فارم منتخب کیا ہو۔ PostHog منتخب کرنے سے Mixpanel نہیں پڑھا جائے گا۔
  • پراپرٹی صرف بعد کے ایونٹس میں آتی ہے: یہ متوقع طرزِ عمل ہے؛ شق 3 کی وضاحت دیکھیں۔
  • URL موجود ہے مگر شناخت نہیں: آپ کے SDK نے ابھی یہ مقرر نہیں کیا: distinct_id، جو صارف کی شناخت ہونے سے پہلے معمول کی بات ہے۔ اگلی بار صفحہ لوڈ ہونے پر یہ حاصل کر لیا جائے گا۔
  • آپ لاگ اِن منتظم کے طور پر جانچ رہے ہیں: کچھ تنصیبات اندرونی ٹریفک کو خارج کرتی ہیں۔ نجی ونڈو آزمائیں۔

یہاں مذکور تمام تجارتی نشان اپنے متعلقہ مالکان کی ملکیت ہیں۔ MousePlayer کا ان فراہم کنندگان سے کوئی کاروباری تعلق نہیں۔