आउटबाउंड मैसेज और टेम्पलेट्स

अपने एजेंट से WhatsApp बातचीत और कॉल शुरू करें

जानकारी

कोई एजेंट सक्रिय बातचीत के दौरान ही फ़्री-फ़ॉर्म WhatsApp मैसेज भेज सकता है। किसी यूज़र तक पहले पहुंचने के लिए — जैसे नोटिफ़िकेशन, दोबारा जुड़ने या शेड्यूल की गई कॉल के लिए — आपको Meta से मंज़ूर मैसेज टेम्प्लेट भेजना होता है। इस पेज में टेम्प्लेट बनाना, आउटबाउंड मैसेज और कॉल भेजना, और उन्हें बड़े पैमाने पर चलाना शामिल है।

WhatsApp Manager में टेम्प्लेट बनाना

टेम्प्लेट WhatsApp Manager में बनाए और मंज़ूर किए जाते हैं, ElevenLabs में नहीं।

टेम्प्लेट बनाते समय:

  • कोई कैटेगरी चुनें: लेन-देन वाले मैसेज के लिए Utility, प्रमोशनल मैसेज के लिए Marketing, या वेरिफ़िकेशन कोड के लिए Authentication। Meta हर कैटेगरी की कीमत और रेट लिमिट अलग तरीके से तय करता है — WhatsApp pricing देखें।
  • पैरामीटर फ़ॉर्मैट चुनें: पोज़िशनल ({{1}}, {{2}}) या नाम वाले ({{customer_name}})। नाम वाले पैरामीटर के लिए, भेजे जाने वाले हर मान पर parameter_name ज़रूरी है।
  • मंज़ूरी के लिए सबमिट करें। मंज़ूरी में आमतौर पर कुछ मिनट से कुछ घंटे लगते हैं। पेंडिंग या अस्वीकृत टेम्प्लेट भेजा नहीं जा सकता — API रिक्वेस्ट स्वीकार करता है, लेकिन Meta कभी मैसेज डिलीवर नहीं करता।

Meta यह सीमित करता है कि किसी तय अवधि में एक यूज़र कितने marketing templates प्राप्त कर सकता है। अगर कोई मार्केटिंग टेम्प्लेट बिना किसी सूचना के डिलीवर नहीं होता, तो यह सीमा एक सामान्य कारण है (Meta त्रुटि 131049)।

आउटबाउंड मैसेज भेजना

टेम्प्लेट मैसेज भेजने से नई बातचीत शुरू होती है। यूज़र के जवाब देने तक एजेंट चुप रहता है — टेम्प्लेट ही पहला मैसेज होता है और यूज़र के जवाब देने तक कोई बातचीत टाइमर शुरू नहीं होता।

WhatsApp पेज पर जाएं, अपना अकाउंट चुनें और Outbound -> Message बटन पर क्लिक करें। कोई एजेंट चुनें, WhatsApp यूज़र ID दें, और मैसेज टेम्प्लेट व उसके पैरामीटर चुनें:

WhatsApp आउटबाउंड मैसेज डायलॉग

पूरी रिक्वेस्ट स्कीमा के लिए API रेफरेंस देखें।

कोई AI असिस्टेंट इन उदाहरणों को आपके टेम्प्लेट के अनुसार बदल सकता है। उसे ElevenLabs डॉक्स की llms.txt (या अधिक विस्तृत llms-full.txt) दें, WhatsApp Manager से अपने टेम्प्लेट की परिभाषा पेस्ट करें और रिक्वेस्ट मांगें — वह आपके टेम्प्लेट के लिए सही template_params के साथ cURL कमांड या SDK कॉल बना देगा।

टेम्प्लेट पैरामीटर

template_params, component ऑब्जेक्ट की एक सूची है, जिसमें पैरामीटर वाले हर टेम्प्लेट कॉम्पोनेंट के लिए एक ऑब्जेक्ट होता है:

  • बॉडी प्लेसहोल्डर के लिए {"type": "body", "parameters": [...]}
  • पैरामीटर वाले हेडर के लिए {"type": "header", "parameters": [...]} (टेक्स्ट, इमेज, दस्तावेज़ या लोकेशन)
  • बटन पैरामीटर के लिए {"type": "button", "sub_type": ..., "index": ..., "parameters": [...]}

parameters में हर एंट्री एक वैल्यू ऑब्जेक्ट होती है, जैसे {"type": "text", "text": "Daniele"}। नाम वाले पैरामीटर के टेम्प्लेट के लिए, हर वैल्यू में parameter_name शामिल करें। कॉम्पोनेंट रैपर छोड़ना — उदाहरण के लिए, template_params में सीधे {"type": "text", ...} देना — अस्वीकार कर दिया जाता है।

प्राप्तकर्ता नंबर का फ़ॉर्मैट

whatsapp_user_id में सिर्फ़ अंक होने चाहिए: देश का कोड और उसके बाद नंबर, बिना +, स्पेस या डैश के। उदाहरण के लिए, 14155552671, न कि +1 (415) 555-2671।

कुछ देशों में किसी व्यक्ति के लिए WhatsApp की ID, उसके डायल किए गए नंबर से अलग होती है — उदाहरण के लिए, मेक्सिकन नंबरों में देश कोड के बाद अतिरिक्त 1 होता है (521...), और ब्राज़ीलियाई नंबरों में नौवां अंक हो भी सकता है या नहीं भी। अगर यूज़र ने आपको पहले मैसेज भेजा है, तो उस पिछली बातचीत से whatsapp_user_id लेना बेहतर है, जिसे आप बातचीत इतिहास से कॉपी कर सकते हैं।

डायनामिक वेरिएबल, ब्रांच और एनवायरनमेंट

conversation_initiation_client_data फ़ील्ड आपको बातचीत के लिए डायनामिक वेरिएबल सेट करने और उसे किसी खास एजेंट ब्रांच व एनवायरनमेंट पर पिन करने देता है:

{
"dynamic_variables": { "customer_name": "Daniele" },
"branch_id": "agtbrch_8721kwarbs83e233mg1fzkaf9pg0",
"environment": "staging"
}

ये सेटिंग बातचीत के लिए बनी रहती हैं: यूज़र के जवाब देने पर एजेंट अनुरोध की गई ब्रांच और एनवायरनमेंट पर फिर से शुरू होता है। ब्रांच और एनवायरनमेंट की पहले जांच होती है — अगर इनमें से कोई मौजूद नहीं है, तो रिक्वेस्ट त्रुटि के साथ विफल हो जाती है और कोई मैसेज नहीं भेजा जाता।

आउटबाउंड बातचीत को डायनामिक वेरिएबल इसी रिक्वेस्ट फ़ील्ड से मिलते हैं; इनबाउंड बातचीत को वे बातचीत शुरू करने वाले वेबहुक से मिलते हैं — इनिशियलाइज़ेशन कॉन्टेक्स्ट देखें।

टेम्प्लेट पैरामीटर सिर्फ़ टेम्प्लेट टेक्स्ट भरते हैं — वे एजेंट को उपलब्ध नहीं होते। अगर एजेंट को टेम्प्लेट से कोई वैल्यू चाहिए (जैसे ग्राहक का नाम), तो उसे फिर से dynamic_variables में भेजें।

भेजने के बाद

सफल रिक्वेस्ट एक conversation_id लौटाती है और रेंडर किया गया टेम्प्लेट पहले मैसेज के रूप में आपकी हिस्ट्री में बातचीत दिखाई देती है। यूज़र के जवाब देने तक एजेंट नहीं चलता। टेम्प्लेट भेजने से न अधिकतम-अवधि टाइमर शुरू होता है, न निष्क्रियता टाइमर; दोनों बातचीत फिर से शुरू होने पर शुरू होते हैं। 200 रिस्पॉन्स का मतलब है कि ElevenLabs ने रिक्वेस्ट स्वीकार कर ली — Meta बाद में भी डिलीवरी अस्वीकार कर सकता है। अगर मैसेज कभी नहीं पहुंचता, तो समस्या निवारण देखें।

आउटबाउंड कॉल शेड्यूल करना

आउटबाउंड WhatsApp कॉल के लिए यूज़र की अनुमति चाहिए — यूज़र कॉल अनुमतियां देखें। WhatsApp Manager में कॉल अनुमति अनुरोध कॉम्पोनेंट वाला मैसेज टेम्प्लेट बनाएं। कॉल शेड्यूल करने पर ElevenLabs अनुमति की स्थिति जांचता है:

  • अनुमति पहले से मिली है: कॉल तुरंत की जाती है।
  • अनुमति अभी नहीं मांगी गई है: अनुमति-अनुरोध टेम्प्लेट भेजा जाता है और यूज़र के मंज़ूर करते ही कॉल की जाती है।
  • अनुमति अस्वीकार की गई: बातचीत को User declined the call permission request. कारण के साथ विफल के रूप में रिकॉर्ड किया जाता है।

WhatsApp पेज पर जाएं, अपना अकाउंट चुनें और Outbound -> Call बटन पर क्लिक करें। कोई एजेंट चुनें, WhatsApp यूज़र ID दें, और कॉल अनुमति अनुरोध टेम्प्लेट चुनें:

WhatsApp आउटबाउंड कॉल डायलॉग

पूरी रिक्वेस्ट स्कीमा के लिए API रेफरेंस देखें। आउटबाउंड मैसेज की तरह, conversation_initiation_client_data डायनामिक वेरिएबल सेट करता है और बातचीत को किसी ब्रांच व एनवायरनमेंट पर पिन करता है। अज्ञात ब्रांच या एनवायरनमेंट होने पर कॉल शेड्यूल होने से पहले ही रिक्वेस्ट अस्वीकार हो जाती है।

Meta आउटबाउंड कॉल और Customer Service Window के बाहर भेजे गए कॉल अनुमति अनुरोधों के लिए शुल्क लेता है। कॉल शेड्यूल करने से पहले WhatsApp Manager में भुगतान का तरीका जोड़ें।

कैंपेन और बैचिंग

कई यूज़र को कॉल करने के लिए, whatsapp_params के साथ बैच कॉलिंग का उपयोग करें: फ़ोन नंबर ID और कॉल अनुमति अनुरोध टेम्प्लेट एक बार दें, और हर प्राप्तकर्ता के लिए एक whatsapp_user_id दें।

फ़िलहाल आउटबाउंड मैसेज के लिए कोई नेटिव बैच एंडपॉइंट नहीं है। टेम्प्लेट कैंपेन के लिए, हर प्राप्तकर्ता के लिए एक बार आउटबाउंड मैसेज एंडपॉइंट कॉल करें और अपने नंबर के लिए Meta की मैसेजिंग सीमाओं के भीतर रहें — मैसेजिंग सीमाएं देखें।