अवलोकन
UniLink iframe (बैकएंड की आवश्यकता नहीं)
सबसे तेज़ तरीका: बस अपना UniLink URL कॉपी करके पेस्ट करें।आपको क्या चाहिए
- एक Didit वर्कफ़्लो (जो Didit Console में बनाया गया हो)
- आपका UniLink URL (अपने वर्कफ़्लो पर Copy Link पर क्लिक करें)
इम्प्लीमेंटेशन
⚠️ आवश्यक: लाइवनेस डिटेक्शन के दौरान कैमरा एक्सेस के लिए allow एट्रिब्यूट अनिवार्य है।
मुख्य लाभ
- 1 मिनट से कम सेटअप: कोई बैकएंड नहीं, कोई API कुंजी नहीं
- शून्य कॉन्फ़िगरेशन: कॉलबैक URL वर्कफ़्लो सेटिंग्स में सेट होता है
- MVP के लिए आदर्श: तुरंत शुरू करें
API सत्र iframe (बैकएंड के साथ)
उन उन्नत इंटीग्रेशन के लिए जिन्हें प्रति-सत्र अनुकूलन चाहिए।कब उपयोग करें
- हर सत्र के लिए कस्टम
vendor_dataयाmetadataपास करें - हर सत्र के लिए अलग-अलग कॉलबैक URL सेट करें
- सत्यापन शुरू होने से पहले सर्वर-साइड पर सत्र ट्रैक करें
- सत्रों को अपनी उपयोगकर्ता ID से जोड़ें
इम्प्लीमेंटेशन
चरण 1: सत्र बनाएँ (बैकएंड) सत्र-निर्माण रिस्पॉन्स मेंurl नाम का फ़ील्ड होता है, इसे iframe के src के रूप में उपयोग करें।
इवेंट सुनना (postMessage)
सत्यापन पेज पैरेंट विंडो को इवेंट भेजता है। हर मैसेज का यह एनवेलप होता है:event.data.sessionId नहीं, event.data.data.sessionId पढ़ें:
didit:ready ({ sessionId }), didit:started, didit:step_started / didit:step_completed / didit:step_changed ({ step, ... }), didit:status_updated ({ status }), didit:completed ({ sessionId, status }), didit:cancelled, didit:error ({ error, step? }), didit:close_request, और didit:layout ({ contentHeight, colorScheme, dir }, देखें नीचे)। JavaScript SDK इवेंट संदर्भ में वे सत्यापन इवेंट सूचीबद्ध हैं जो टाइप्ड कॉलबैक के रूप में उपलब्ध हैं। संस्करण 0.5.0 से, SDK layout मैसेज को अंदर से संभालता है और उन्हें onEvent को नहीं भेजता।
didit:layout से iframe का आकार तय करें
सत्यापन पेज didit:layout मैसेज के साथ बताता है कि उसे कितनी जगह चाहिए। यह लोड होने पर एक बार भेजता है, और जब भी उसकी कंटेंट की ऊँचाई, थीम या टेक्स्ट दिशा बदलती है, तब फिर से भेजता है:
अपने iframe में
didit:layout प्राप्त करने के लिए, उसके सत्यापन URL में sdk_presentation=embedded जोड़ें। संस्करण 0.5.0 से, JavaScript SDK यह प्रेज़ेंटेशन स्वयं सेट करता है। प्रेज़ेंटेशन पैरामीटर के बिना, पेज अपना स्टैंडअलोन लेआउट उपयोग करता है और layout मैसेज नहीं भेजता।colorScheme और dir का उपयोग करें।
यदि उपयोगकर्ता का कनेक्शन टूट जाता है, तो पेज “No internet connection” स्क्रीन दिखाता है, जो कनेक्शन वापस आने पर अपने आप बंद हो जाती है। यदि उपयोगकर्ता वहाँ Exit Verification चुनता है, तो पेज error: "network_error" के साथ didit:error भेजता है, फिर didit:cancelled। didit:cancelled मिलने पर iframe बंद करें।
मोडल इम्प्लीमेंटेशन
आपके पेज पर ओवरले होने वाले एक परिष्कृत मोडल अनुभव के लिए:HTML/CSS/JS
React कंपोनेंट
मोडल-आधारित सत्यापन के लिए एक पुन: उपयोग योग्य React कंपोनेंट:उपयोग
Vue कंपोनेंट
कॉन्फ़िगरेशन
आवश्यक अनुमतियाँ
कैप्चर, लोकेशन, कॉपी और मीडिया संगतता के लिए इस पूरी अनुमति सूची का उपयोग करें:allow एट्रिब्यूट अनुमतियाँ सौंपता है; यह उपयोगकर्ता के चुनाव या आपके होस्ट पेज के किसी सख़्त Permissions-Policy हेडर को ओवरराइड नहीं करता।
iframe का आकार
सत्यापन प्रवाह अपने iframe के आकार के अनुसार खुद को व्यवस्थित करता है। iframe को उस विंडो के हिसाब से आकार दें जिसमें वह दिखाया जाएगा:
मध्यम रेंज के लिए, पहला
didit:layout संदेश आने तक 500px गुणा 700px से शुरू करें, उसी ऊँचाई सीमा के साथ। didit:layout उदाहरण तीनों आकार लागू करता है, जिसमें कोई संदेश आने से पहले कंप्यूटर और फ़ोन के आकार भी शामिल हैं।
कंटेंट सिक्योरिटी पॉलिसी (CSP)
यदि आप CSP का उपयोग करते हैं, तो Didit को अपनेframe-src डायरेक्टिव में जोड़ें:
क्रॉस-डिवाइस सत्यापन
InContext iframe क्रॉस-डिवाइस सत्यापन को अपने-आप सपोर्ट करता है:- उपयोगकर्ता डेस्कटॉप पर सत्यापन शुरू करता है
- यदि कैमरा उपलब्ध नहीं है, तो QR कोड दिखाया जाता है
- उपयोगकर्ता मोबाइल पर QR कोड स्कैन करता है
- उपयोगकर्ता मोबाइल पर सत्यापन पूरा करता है
- डेस्कटॉप का iframe परिणाम के साथ अपने-आप अपडेट हो जाता है
समस्या निवारण
कैमरा काम नहीं कर रहा
- सुनिश्चित करें कि iframe में पूरी अनुमति सूची शामिल है
- जाँचें कि आपकी साइट HTTPS पर उपलब्ध है
- सत्यापित करें कि उपयोगकर्ता ने आपके डोमेन को कैमरे की अनुमति दी है
- यदि iframe में कैमरा एक्सेस विफल हो, तो Redirect विधि आज़माएँ
iframe लोड नहीं हो रहा
- कंटेंट सिक्योरिटी पॉलिसी (CSP) से जुड़ी समस्याएँ जाँचें
https://verify.didit.meको अपनेframe-srcडायरेक्टिव में जोड़ें- ब्राउज़र कंसोल में त्रुटियाँ जाँचें
postMessage प्राप्त नहीं हुआ
- सुनिश्चित करें कि आप सही ओरिजिन सुन रहे हैं (
https://verify.didit.me, या आपका व्हाइट लेबल डोमेन) - जाँचें कि iframe खोलने से पहले इवेंट लिसनर जोड़ा गया है
- इवेंट का नाम और ढाँचा जाँचें: टाइप्स पर प्रीफ़िक्स होता है (
didit:completed,verification_completeनहीं), और पेलोडevent.data.dataके अंदर नेस्टेड होता है
उदाहरण रिपॉज़िटरी
GitHub रिपॉज़िटरी
GitHub पर स्रोत कोड और उदाहरण देखें