Meta Tech Provider

WhatsApp ویب ہک اینڈ پوائنٹ کی تصدیق

کسی بھی ایونٹ کی ڈیلیوری سے پہلے Meta آپ کے اینڈ پوائنٹ کو GET کے ذریعے hub.mode، hub.verify_token اور hub.challenge بھیجتا ہے۔ آپ کے اینڈ پوائنٹ کو ٹوکن کا موازنہ کرنا ہوگا اور چیلنج کو اصل باڈی کے طور پر واپس کرنا ہوگا۔ اس کے علاوہ کچھ بھی ہو تو ڈیلیوری شروع نہیں ہوتی۔

hub.challenge

وہ قدر جو جواب کی باڈی کے طور پر واپس کرنی ہوگی۔

subscribe

تصدیقی درخواست میں hub.mode کی قدر۔

HTTPS

واحد اسکیم جس کی Meta تصدیق کرے گا۔ HTTP کال سے پہلے ہی مسترد ہو جاتا ہے۔

Meta بالکل کیا بھیجتا ہے؟

آپ کے URL پر تین query parameters کے ساتھ GET درخواست آتی ہے۔ hub.mode کی قدر subscribe ہوتی ہے۔ hub.verify_token وہ ٹوکن ہے جو منزل سیٹ کرتے وقت آپ نے ترتیب دیا تھا۔ hub.challenge وہ قدر ہے جو Meta اس کوشش کے لیے بناتا ہے۔

آپ کے اینڈ پوائنٹ کو hub.verify_token کا موازنہ اپنے منتخب کردہ ٹوکن سے کرنا چاہیے، اور مماثلت ہونے پر 200 کے ساتھ hub.challenge کو پوری جواب باڈی کے طور پر واپس کرنا چاہیے۔ اسے JSON میں نہ لپیٹیں، اس کے گرد اقتباس کے نشانات نہ لگائیں، اور آخر میں وہ نئی لائن نہ آنے دیں جو کچھ فریم ورک خود شامل کرتے ہیں۔

اگر ٹوکن مماثل نہ ہو تو 403 واپس کریں۔ یہی پورا پروٹوکول ہے، اور اسے جان بوجھ کر مختصر رکھا گیا ہے۔

غلط جواب خاموشی سے کیوں ناکام ہوتا ہے؟

کیونکہ تصدیق کا ناکام ہونا آپ کے سسٹم کی خرابی نہیں، Meta کے سسٹم میں موجودگی کا نہ ہونا ہے۔

جب چیلنج درست طور پر واپس نہیں آتا تو Meta اس منزل پر ڈیلیوری شروع ہی نہیں کرتا۔ آپ کا سرور تصدیق کی درخواست پر 200 واپس کرتا ہے، آپ کے لاگز میں درخواست آنے کا ریکارڈ ہوتا ہے، اور کوئی ڈیش بورڈ مسئلہ نہیں دکھاتا۔ واحد علامت یہ ہے کہ میسجز کبھی نہیں آتے، جسے زیادہ تر لوگ ہینڈ شیک کے مسئلے کے بجائے Coexistence کا مسئلہ سمجھتے ہیں۔

اسی لیے کال سے پہلے جانچنا فائدہ مند ہے۔ ہم Graph درخواست بھیجنے سے پہلے چیک کرتے ہیں کہ URL HTTPS ہے اور verify token دیا گیا ہے، اس لیے خراب منزل فوراً ناکام ہو جاتی ہے، جڑی ہوئی نظر نہیں آتی۔

تصدیق کو اور کیا روک سکتا ہے؟

تین چیزیں جن کا کوڈ سے کوئی تعلق نہیں۔

اینڈ پوائنٹ کے سامنے آتھنٹیکیشن۔ گیٹ وے، basic auth layer یا IP allowlist، Meta کی درخواست مسترد کر دیں گے، کیونکہ Meta کے پاس پیش کرنے کے لیے کوئی اسناد نہیں ہوتیں۔ تصدیقی روٹ ان کے بغیر قابل رسائی ہونا چاہیے۔

ری ڈائریکٹ۔ Meta اسی URL کو کال کرتا ہے جو آپ نے دیا ہے، اور canonical host پر 301 اس طرح فالو نہیں ہوتا کہ ہینڈ شیک مکمل ہو سکے۔ اسے حتمی URL دیں۔

اور ایسا فریم ورک جو جواب کو سیریَلائز کرتا ہو۔ ایسے ہینڈلر سے اسٹرنگ واپس کرنا جو ہر چیز کو JSON میں لپیٹتا ہے، چیلنج کے گرد اقتباس کے نشانات والی باڈی بناتا ہے، جو مماثل نہیں ہوتی۔

عام غلطیاں

  • JSON واپس کرنا۔ باڈی اصل چیلنج کی قدر ہونی چاہیے، اس کے گرد کچھ نہیں ہونا چاہیے۔
  • اینڈ پوائنٹ کو آتھنٹیکیشن کے پیچھے رکھنا۔ Meta کے پاس اسناد نہیں ہوتیں، اس لیے درخواست مسترد ہو جائے گی۔
  • Meta کو ری ڈائریکٹ ہونے والا URL دینا۔ حتمی URL استعمال کریں۔
EasyCoexistence کے ساتھ یہ کام کرنا

EasyCoexistence Meta کو کال کرنے سے پہلے چیک کرتا ہے کہ منزل HTTPS ہے اور اس میں verify token موجود ہے، پھر منزل حذف کرنے کے بجائے کنکشن ٹائم لائن پر ناکام ہینڈ شیک درج کرتا ہے۔

اکثر پوچھے جانے والے سوالات

مجھے کون سا ٹوکن استعمال کرنا چاہیے؟

کوئی بھی اسٹرنگ جو آپ منتخب کریں۔ اس کا مقصد یہ ہے کہ آپ کا اینڈ پوائنٹ Meta کی درخواست کو URL جاننے والے کسی اور شخص کی درخواست سے الگ پہچان سکے۔

تصدیق کتنی بار ہوتی ہے؟

سیٹ اپ کے وقت، اور جب بھی منزل سیٹ کی جائے۔ کام کرنے والے اینڈ پوائنٹ کی ہر ایونٹ پر دوبارہ تصدیق نہیں ہوتی۔

کیا میں خود اس کی جانچ کر سکتا ہوں؟

ہاں۔ اپنے اینڈ پوائنٹ کو تینوں parameters کے ساتھ کال کریں اور چیک کریں کہ باڈی بالکل چیلنج کی قدر کے طور پر واپس آتی ہے۔

اگر تصدیق کے دوران میرا سرور بند تھا تو کیا ہوگا؟

ہینڈ شیک ناکام ہو جائے گا اور منزل فعال نہیں ہوگی۔ اسے دوبارہ محفوظ کرنے سے تصدیق پھر چل جائے گی۔

مزید پڑھیں

شروع کرنے کے لیے تیار ہیں؟

WhatsApp Coexistence چند منٹ میں سیٹ اپ کریں، مہینوں میں نہیں۔ ایپ فون پر کام کرتی رہتی ہے۔

فری ٹرائل شروع کریں

تصدیق شدہ تاریخ

WhatsApp ویب ہک کی تصدیق