SMS OTP वेरिफ़िकेशन
SMS OTP वेरिफ़िकेशन
Twilio Verify का इस्तेमाल करके एजेंट बातचीत के दौरान SMS पर वन-टाइम पासकोड भेजें और वेरिफ़ाई करें।

परिचय
यह गाइड बताती है कि Twilio Verify को अपने ElevenLabs एजेंट के साथ कैसे इंटीग्रेट करें, ताकि आप कॉलर के फ़ोन नंबर पर OTP भेज सकें और लाइव वॉइस बातचीत के दौरान उनके द्वारा बताए गए कोड को वेरिफ़ाई कर सकें।
आप जानेंगे कि कैसे:
- एक Twilio Verify सर्विस बनाएं और ऑथेंटिकेशन के लिए अपने क्रेडेंशियल्स को Base64-एन्कोड करें।
- डैशबोर्ड, Agents CLI या ElevenLabs API का इस्तेमाल करके दो webhook टूल्स (
send_SMS_verificationऔरcheck_SMS_verification) कॉन्फ़िगर करें। - सीक्रेट वैल्यू वाले
Authorizationहेडर से दोनों webhook कॉल्स को ऑथेंटिकेट करें। skip_turnसिस्टम टूल सक्षम करें, ताकि जब कॉलर को अभी तक कोड नहीं मिला हो, तो एजेंट इंतज़ार करे।
ज़रूरी शर्तें
- Twilio Verify चालू किया हुआ एक Twilio अकाउंट। अगर आपके Twilio Console में Verify उपलब्ध नहीं है, तो Twilio support या अपनी Twilio अकाउंट टीम के ज़रिए एक्सेस का अनुरोध करें।
- अगर आपका Twilio अकाउंट trial mode में है, तो डेस्टिनेशन फ़ोन नंबर Twilio में सत्यापित caller ID होना चाहिए।
Authenticate (Verify) सर्विस बनाएं
बाईं साइडबार में Add + चुनें और एक Authenticate (Verify) सर्विस बनाएं।
Verify Service SID कॉपी करें
सर्विस का Settings पेज खोलें और Verify Service SID कॉपी करें। यह VA से शुरू होता है और आपके Account SID से अलग है।
आम गलती: नीचे दिए गए टूल URLs में Authenticate (Verify) सर्विस का अपना Verify Service SID (VA...) इस्तेमाल करें। पाथ में अपना Account SID (AC...) न डालें। Verify API को URL में सर्विस SID चाहिए; Account SID इस्तेमाल करने पर 4xx invalid-parameter errors मिलती हैं।
अपने एजेंट से जोड़ने से पहले रिक्वेस्ट टेस्ट करने के लिए आप console में Twilio API Explorer इस्तेमाल कर सकते हैं।
क्रेडेंशियल एन्कोड करें और webhook टूल कॉन्फ़िगर करें
Basic authentication के लिए अपने Twilio क्रेडेंशियल एन्कोड करें
Twilio Verify, यूज़रनेम के रूप में आपके Account SID और पासवर्ड के रूप में Auth Token के साथ HTTP Basic authentication इस्तेमाल करता है। दोनों Twilio Console के होम पेज पर Account Info में मिलेंगे।
अपने shell में ACCOUNT_SID:AUTH_TOKEN को Base64-encode करें (कोलन से अलग, बिना स्पेस के):
आउटपुट कॉपी करें। पूरा Authorization header value, Basic शब्द, एक स्पेस और वह Base64 स्ट्रिंग होता है। अगले चरणों में इसे टूल secret के रूप में स्टोर करें।
send_SMS_verification और check_SMS_verification टूल कॉन्फ़िगर करें
send_SMS_verification, SMS OTP भेजने के लिए Twilio Verify को कॉल करता है। check_SMS_verification, कॉलर के बोले गए अंक सबमिट करता है। दोनों के लिए एक ही Verify Service SID और एक ही Authorization secret चाहिए।
डैशबोर्ड से जोड़ें
CLI से जोड़ें
API से जोड़ें
send_SMS_verification

अपनी एजेंट सेटिंग्स के Agent सेक्शन में Add Tool चुनें और Webhook चुनें।
YOUR_VERIFY_SERVICE_SID को पहले चरण के VA... SID से बदलें।
Authentication header: Headers में, Authorization को Secret टाइप के रूप में जोड़ें और पूरा value (Basic के बाद Base64) पेस्ट करें। Webhook tools देखें।
Body parameters: Content type को URL-encoded (application/x-www-form-urlencoded) पर सेट करें। वैल्यू टाइप के रूप में LLM Prompt के साथ पैरामीटर जोड़ें:
check_SMS_verification
दूसरा webhook टूल जोड़ें:
send_SMS_verification के लिए इस्तेमाल किए गए उसी Verify Service SID और Authorization secret का उपयोग करें।
Body parameters: URL-encoded। LLM Prompt के साथ To (E.164) और Code (OTP अंक) जोड़ें।
अगर आप डैशबोर्ड में Channel को LLM से भरने वाले फ़ील्ड के रूप में कॉन्फ़िगर करते हैं, तो अपने system prompt में निर्देश जोड़ें, ताकि मॉडल हमेशा sms पास करे। ऊपर दिए CLI और API उदाहरण constant_value / constantValue के साथ sms को तय रखते हैं, इसलिए मॉडल चैनल नहीं चुनता।
skip_turn सिस्टम टूल चालू करें
कोड पढ़ने से पहले कॉलर को SMS मिलने में अक्सर कुछ समय लगता है। skip_turn के बिना, एजेंट रुकावट के दौरान बोल सकता है या prompts दोहरा सकता है।
डैशबोर्ड से जोड़ें
CLI से जोड़ें
API से जोड़ें
Tools में Add Tool चुनें, System tool चुनें और Skip turn चालू करें। आगे कोई कॉन्फ़िगरेशन ज़रूरी नहीं है।
सिस्टम prompt में निर्देश जोड़ें, ताकि मॉडल को पता हो कि इसे कब कॉल करना है, उदाहरण के लिए:
जानकारी के लिए Skip turn देखें।
समस्या निवारण
Twilio 60200 — अमान्य पैरामीटर (HTTP 400)
जब अनुरोध URL या बॉडी Verify API की अपेक्षाओं से मेल नहीं खाता, तो Twilio ऐसा बॉडी लौटा सकता है:
क्या जांचें: पाथ में Authenticate (Verify) सेवा सेटिंग्स से आपका Verify Service SID (VA...) होना चाहिए। .../Services/{Sid}/... में अपना Account SID (AC...) डालना 60200 की आम वजह है। अमान्य पैरामीटर के अन्य मामलों के लिए Twilio का 60200 दस्तावेज़ देखें।
Twilio 20003 — प्रमाणीकरण त्रुटि — कोई क्रेडेंशियल नहीं दिया गया (HTTP 401)
जब Authorization हेडर मौजूद नहीं होता, गलत फ़ॉर्मैट में होता है या भेजा नहीं जाता, तो Twilio यह जवाब दे सकता है:
क्या जांचें: टूल को Authorization हेडर भेजना चाहिए, जिसका मान पूरा Basic <base64> स्ट्रिंग हो (जिसमें Basic शब्द और Base64 आउटपुट से पहले एक स्पेस शामिल हो)। Base64 इनपुट में बिना अतिरिक्त स्पेस या नई लाइन के बिल्कुल ACCOUNT_SID:AUTH_TOKEN होना चाहिए। पुष्टि करें कि दोनों webhook टूल में इस हेडर के साथ secret जुड़ा है। 20003 देखें।
अन्य समस्याएं
- ट्रायल मोड में नंबर अस्वीकृत: Twilio Console में Verified phone numbers खोलें और टेस्ट करने से पहले सुनिश्चित करें कि डेस्टिनेशन नंबर सूची में है।
- एजेंट कॉलर के ऊपर बोल रहा है: पुष्टि करें कि Skip turn चालू है और सिस्टम प्रॉम्प्ट मॉडल को बताता है कि कॉलर को समय चाहिए होने पर
skip_turnका इस्तेमाल करे।