لاگ اِن کریںفری ٹرائل شروع کریں
Meta Tech Provider

LangChain ایجنٹ کو WhatsApp نمبر دیں

LangChain ایجنٹ کو WhatsApp دو حصوں میں ملتا ہے۔ آنے والے میسج نمبر کے ویب ہک کے ذریعے آپ کے ویب روٹ تک پہنچتے ہیں اور روٹ ایجنٹ کو چلاتا ہے۔ کارروائی کے لیے ایجنٹ LangChain کے MCPAdapter سے OAuth کے ذریعے EasyCoexistence کے MCP ٹولز لوڈ کرتا ہے، یا نمبر کے ٹوکن اور phone number id کے ساتھ Cloud API کو براہِ راست کال کرتا ہے۔

1.4.0

langchain.mcp نیم اسپیس کے لیے langchain[mcp] کا کم از کم ورژن، جو بیٹا میں ہے۔

auth="oauth"

مکمل OAuth 2.1 فلو چلاتا ہے: ڈسکوری، ڈائنامک کلائنٹ رجسٹریشن، براؤزر ری ڈائریکٹ اور ٹوکن ایکسچینج۔

131047

Meta کی وہ خرابی جو تب آتی ہے جب وصول کنندہ کے آخری جواب کو 24 گھنٹے سے زیادہ گزر چکے ہوں۔

LangChain ایجنٹ WhatsApp کے ٹولز کیسے لوڈ کرتا ہے؟

MCPAdapter کے ذریعے، جو LangChain کا MCP کلائنٹ ہے اور کسی MCP سرور کے ٹولز کو عام LangChain ٹولز کی طرح create_agent کو دیتا ہے۔ اس کے لیے langchain[mcp] کا ورژن 1.4.0 یا اس سے نیا چاہیے اور یہ بیٹا ہے۔

تصدیق FastMCP کے سپرد ہے۔ کلائنٹ پر auth="oauth" دینے سے مکمل OAuth 2.1 فلو چلتا ہے: ڈسکوری، ڈائنامک کلائنٹ رجسٹریشن، براؤزر ری ڈائریکٹ اور ٹوکن ایکسچینج۔ EasyCoexistence کا MCP سرور یہی چاہتا ہے، اس لیے کوئی کلید بنانے یا پیسٹ کرنے کی ضرورت نہیں۔ ڈیفالٹ طور پر ٹوکن میموری میں رہتے ہیں اور ہر رن میں براؤزر والا مرحلہ دہرانا پڑتا ہے؛ ٹوکن اسٹور والا FastMCP OAuth پرووائیڈر انہیں رنز کے درمیان محفوظ رکھتا ہے۔

لوڈ ہونے کے بعد ایجنٹ کو ٹولز ان کی تفصیل کے ساتھ نظر آتے ہیں: پہلے list_numbers، کیونکہ باقی ہر ٹول اسی سے connection_id لیتا ہے، پھر send_message، send_template، list_templates، get_number_health اور باقی ٹولز۔

Load the tools into an agent, from LangChain's documented pattern
from fastmcp.client import Client
from langchain.agents import create_agent
from langchain.mcp import MCPAdapter

URL = "https://easycoexistence.com/api/mcp"

async def build_agent(model: str):
    async with MCPAdapter(Client(URL, auth="oauth")) as adapter:
        tools = await adapter.list_tools()
        return create_agent(model, tools)

آنے والا WhatsApp میسج ایجنٹ تک کیسے پہنچتا ہے؟

ویب ہک کے ذریعے، کیونکہ MCP یہ نہیں کر سکتا۔ پروٹوکول درخواست اور جواب پر چلتا ہے، اس لیے جب کوئی کسٹمر لکھتا ہے تو سرور کلائنٹ کو جگا نہیں سکتا۔

نمبر کی ویب ہک منزل اپنی ایپلیکیشن کے کسی روٹ پر رکھیں اور URL پاتھ میں لمبا بے ترتیب سیکرٹ شامل کریں۔ روٹ Meta کی تصدیق والی GET کا جواب خام چیلنج سے دیتا ہے، ہر POST قبول کرتا ہے، فوراً 200 لوٹاتا ہے اور کام قطار میں لگا دیتا ہے۔ پھر ایک ورکر پے لوڈ سے بھیجنے والے کا نمبر اور متن لے کر ایجنٹ کو چلاتا ہے۔ بھیجنے والے کا نمبر ہی تھریڈ آئی ڈی بنتا ہے تاکہ میموری ہر کسٹمر کی الگ رہے۔

سیکرٹ کی جانچ URL میں کریں، X-Hub-Signature-256 ہیڈر پر نہیں۔ Meta اس Tech Provider کے ایپ سیکرٹ سے سائن کرتا ہے جو کبھی شیئر نہیں ہوتا، اس لیے کسٹمر وہ ہیڈر ویلیڈیٹ نہیں کر سکتا۔

ایجنٹ کو MCP سے بھیجنا چاہیے یا Cloud API سے؟

دونوں کام کرتے ہیں، اور فرق یہ ہے کہ اصول کس کے پاس ہیں۔ MCP ٹولز اپنی تفصیل میں WhatsApp کے اصول رکھتے ہیں، جیسے send_message صرف 24 گھنٹے کی ونڈو کے اندر چلتا ہے اور send_template اس شخص تک پہنچنے کا راستہ ہے جس نے لکھا نہ ہو۔ ان تفصیلات کو پڑھ کر ماڈل زیادہ تر درست ٹول چنتا ہے، اور جہاں ایجنٹ آزادانہ فیصلہ کرتا ہے وہاں یہی کام آتا ہے۔

جب ایجنٹ کا کام محدود ہو، مثلاً ہمیشہ اسی کو جواب دینا جس نے ابھی لکھا ہے، تو اپنا سادہ ٹول زیادہ آسان رہتا ہے جو نمبر کے ٹوکن کے ساتھ Cloud API کے messages اینڈ پوائنٹ پر پوسٹ کرے۔ تب ونڈو کی جانچ آپ کے اپنے کوڈ میں ہوتی ہے، اور جس اصول کا ٹوٹنا ناقابلِ قبول ہو اس کی جگہ وہی ہے۔ ونڈو کے باہر آزاد متن بھیجیں تو ایرر کوڈ 131047 آتا ہے اور کسٹمر کو کچھ نظر نہیں آتا۔

عام غلطیاں

  • MCP سے آنے والے میسج ملنے کی توقع رکھنا۔ ویب ہک روٹ کے بغیر ایجنٹ کو کسٹمر کی کوئی خبر نہیں ملتی۔
  • OAuth ٹوکن سرور پر میموری میں چھوڑ دینا۔ ہر ری اسٹارٹ پر براؤزر سائن ان مانگا جاتا ہے؛ ٹوکن اسٹور سے انہیں محفوظ رکھیں۔
  • تمام کسٹمرز کے لیے ایک ہی تھریڈ استعمال کرنا۔ ایجنٹ کی میموری بھیجنے والے کے نمبر پر رکھیں۔
EasyCoexistence کے ساتھ یہ کام کرنا

easycoexistence.com پر نمبر کنیکٹ کریں، ویب ہک منزل اپنے روٹ پر رکھیں اور ایک OAuth سائن ان سے MCP ٹولز ایجنٹ میں لوڈ کریں۔ قیمت US$ 9 فی نمبر ماہانہ سے شروع ہو کر نمبر بڑھنے پر US$ 1 تک آ جاتی ہے، اور پہلے 3 دن مفت ہیں۔

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

کیا یہ صرف Python کے لیے ہے؟

MCPAdapter کی مثال Python میں ہے۔ ویب ہک اور Cloud API سادہ HTTP ہیں، اس لیے LangChain جس زبان میں بھی چلے، وصولی اور ارسال ممکن ہے۔

کیا ایجنٹ کو ہر بار list_numbers چاہیے؟

اسے connection_id چاہیے، اور وہ صرف list_numbers سے ملتا ہے۔ ایک نمبر ہو تو ایجنٹ اسے شروع میں ایک بار کال کرتا ہے۔

کیا ٹیم اب بھی فون سے جواب دے سکتی ہے؟

جی ہاں۔ Coexistence میں WhatsApp Business ایپ چلتی رہتی ہے، اور فون سے دیے گئے جواب آپ کے روٹ تک echo ایونٹس کی صورت میں پہنچتے ہیں جنہیں ایجنٹ مدنظر رکھ سکتا ہے۔

کیا EasyCoexistence گفتگو پڑھتا ہے؟

نہیں۔ Meta سیدھا آپ کے روٹ پر ڈیلیور کرتا ہے اور میسج کا مواد ہمارے پاس کبھی محفوظ نہیں ہوتا۔ MCP ٹولز اکاؤنٹ اور نمبر کی حالت پڑھتے ہیں۔

مزید پڑھیں

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

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

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

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

WhatsApp پر LangChain ایجنٹ، Cloud API