FAQ, SDK और लागत

इंटीग्रेटर्स के सामान्य प्रश्न, साथ ही SDK और API मूल्य निर्धारण कैसे काम करते हैं।

अक्सर पूछे जाने वाले प्रश्न

Cams Biometrics Web API 3.0 के साथ इंटीग्रेट करने से जुड़े सामान्य प्रश्न।

सामान्य

प्र: Cams Biometric Gateway और उसका Biometric API क्या है?
Cams Biometric Gateway एक यूनिवर्सल क्लाउड प्लेटफ़ॉर्म है, जो एक Biometric API उपलब्ध कराता है, जिससे कोई भी वेब एप्लिकेशन बायोमेट्रिक अटेंडेंस और एक्सेस कंट्रोल डिवाइस से रियल-टाइम में संवाद कर सकता है। यह Callback (इनबाउंड) और RESTful (आउटबाउंड) API में 38 ऑपरेशन सपोर्ट करता है — किसी डिवाइस SDK या स्टैटिक IP की आवश्यकता के बिना।
प्र: क्या इंटीग्रेट करने के लिए SDK की आवश्यकता है?
नहीं। Cams कोई SDK उपलब्ध नहीं कराता और न ही उसकी आवश्यकता है। सारा संचार JSON पेलोड के साथ मानक HTTP/HTTPS POST रिक्वेस्ट से होता है। HTTP कॉल कर सकने वाली कोई भी भाषा काम करेगी।
प्र: कौन-सी प्रोग्रामिंग भाषाएँ समर्थित हैं?
JSON के साथ HTTP POST भेजने/प्राप्त करने वाली कोई भी भाषा — PHP, Python, Java, C#, Node.js, Go, Ruby और अन्य। हम 7 भाषाओं के लिए AI कोड जनरेटर प्रॉम्प्ट उपलब्ध कराते हैं।
प्र: Cams Protocol Engine क्या है?
यह क्लाउड मिडलवेयर है जो बायोमेट्रिक डिवाइस और आपके सर्वर के बीच काम करता है। यह प्रोटोकॉल ट्रांसलेशन, डेटा नॉर्मलाइज़ेशन और ऑफ़लाइन कैशिंग संभालता है, और अंतर्निहित डिवाइस ब्रांड या मॉडल चाहे जो हो, एक समान JSON API देता है।
प्र: API Monitor क्या है?
API Monitor आपका एडमिन पोर्टल है, जहाँ आप Callback URL कॉन्फ़िगर करते हैं, AuthToken प्रबंधित करते हैं, Security Key सेट करते हैं, डिवाइस स्टेटस देखते हैं और अपना RESTful एंडपॉइंट URL तथा Service Tag ID प्राप्त करते हैं।

डिवाइस संगतता

प्र: कौन-से बायोमेट्रिक डिवाइस समर्थित हैं?
सभी Cams Biometrics मशीनें (सूची: camsbiometrics.com/product) Native Push के साथ पूर्ण API सपोर्ट करती हैं। developer.camsbiometrics.com पर सत्यापित डिवाइस में भी पूर्ण Native Push सपोर्ट है।
प्र: क्या गैर-Cams डिवाइस (ZkTeco, eSSL, BioMax आदि) इस API का उपयोग कर सकते हैं?
हाँ, Protocol Update के साथ। गैर-Cams और असत्यापित डिवाइस Hybrid Push के माध्यम से काम करते हैं। कनेक्शन मोड और हार्डवेयर क्षमताओं के आधार पर कुछ सुविधाएँ सीमित हो सकती हैं।
प्र: Native Push और Hybrid Push में क्या अंतर है?
Native Push: बिना किसी सीमा के पूर्ण API सपोर्ट — सभी 38 ऑपरेशन काम करते हैं। Cams मशीनों और सत्यापित डिवाइस के लिए उपलब्ध।
Hybrid Push: गैर-Cams/असत्यापित डिवाइस के लिए। सुविधाओं की उपलब्धता संचार मोड (SDK, DB Pull या File Processing) पर निर्भर करती है। देखें कनेक्शन मोड।
प्र: कौन-सी बायोमेट्रिक विधियाँ समर्थित हैं?
फ़िंगरप्रिंट, फ़ेशियल रिकग्निशन, पाम वेन, RFID/प्रॉक्सिमिटी कार्ड, न्यूमेरिक PIN/पासवर्ड, आइरिस स्कैनिंग और शरीर का तापमान मापना (डिवाइस पर निर्भर)।
प्र: मेरे डिवाइस पर कुछ API सुविधाएँ काम क्यों नहीं करतीं?
यह (a) कनेक्शन मोड — DB Pull और File Processing मोड केवल अटेंडेंस पुश सपोर्ट करते हैं, RESTful API नहीं, और (b) हार्डवेयर सीमाओं — कुछ डिवाइस मॉडल फ़र्मवेयर स्तर पर विशिष्ट सुविधाएँ सपोर्ट नहीं करते — पर निर्भर करता है। अपने हार्डवेयर पर टेस्ट करें और सहायता के लिए Cams सपोर्ट से संपर्क करें।

Callback API (डिवाइस → सर्वर)

प्र: Callback API क्या है?
Callback API बायोमेट्रिक डिवाइस से आपके सर्वर तक रियल-टाइम इवेंट पहुँचाता है। जब कोई पंच होता है या डिवाइस पर कोई यूज़र बदला जाता है, तो Cams Protocol Engine तुरंत आपके कॉन्फ़िगर किए Callback URL पर JSON पेलोड POST करता है।
प्र: मेरे सर्वर को क्या जवाब देना चाहिए?
हमेशा HTTP स्टेटस 200 के साथ {"status":"done"} लौटाएँ — भले ही आपकी आंतरिक प्रोसेसिंग विफल हो जाए। Cams Protocol Engine को कभी ब्लॉक न करें। भारी प्रोसेसिंग को असिंक्रोनस निष्पादन के लिए कतार में डालें।
प्र: पंच होते समय मेरा सर्वर ऑफ़लाइन हो तो क्या होगा?
Biometric Gateway सभी इवेंट को कैश करता है और आपका सर्वर ऑनलाइन होते ही उन्हें अपने-आप डिलीवर कर देता है। कोई डेटा नहीं खोता।
प्र: डुप्लिकेट पंच को कैसे संभालूँ?
अपने सर्वर पर UserID + LogTime के संयोजन से डुप्लिकेट-पहचान लॉजिक लागू करें। ऑफ़लाइन रिकवरी या नेटवर्क रीट्राई के दौरान वही पंच दोबारा भेजा जा सकता है।
प्र: कौन-से पंच प्रकार समर्थित हैं?
CheckIn, CheckOut, BreakOut, BreakIn, OverTimeIn, OverTimeOut, MealIn, MealOut। InputType फ़ील्ड उपयोग की गई बायोमेट्रिक विधि दिखाती है: Fingerprint, Face, Palm, Card या Password।
Q: How do user templates work in Callbacks?
When a user is updated on the device (operations #3–#9), templates may arrive one at a time or in groups across multiple callbacks. Each callback only carries templates that changed — not the full set. Your server must merge/upsert by Type + Index as the unique key. Never overwrite all templates on a single callback.
प्र: क्या मैं अटेंडेंस फ़ोटो प्राप्त कर सकता हूँ?
हाँ। ऑपरेशन #10 RealTimeAttendancePhoto पंच के समय कैप्चर किया गया Base64-एन्कोडेड JPEG स्नैपशॉट डिलीवर करता है। यह पंच लॉग callback (#11) से अलग है और कैमरा सपोर्ट वाले डिवाइस पर उपलब्ध है।
प्र: क्या Callback में तापमान और मास्क डिटेक्शन शामिल है?
हाँ, यदि डिवाइस इसे सपोर्ट करता है। PunchLog ऑब्जेक्ट में Temperature (शरीर के तापमान की रीडिंग) और FaceMask (बूलियन — फ़ेस मास्क पहचाना गया या नहीं) शामिल हैं।

RESTful API (सर्वर → डिवाइस)

प्र: RESTful API क्या है?
RESTful API आपके सर्वर को बायोमेट्रिक डिवाइस को कमांड भेजने देता है — यूज़र जोड़ना/हटाना, लॉग लोड करना, बायोमेट्रिक एनरोल करना और एक्सेस नियंत्रित करना। आप अपने API Monitor खाते में दिए गए एंडपॉइंट URL पर JSON POST करते हैं।
प्र: मुझे अपना RESTful एंडपॉइंट URL कहाँ मिलेगा?
अपने API Monitor खाते में लॉग इन करें। आपका RESTful एंडपॉइंट URL और Service Tag ID (stgid) वहीं सूचीबद्ध हैं।
प्र: RESTful कमांड की लेटेंसी कितनी है?
लगभग 15 सेकंड। Biometric Gateway आपके कमांड को कतार में रखता है और डिवाइस के अगली बार कनेक्ट होने पर उसे डिलीवर करता है (ऑनलाइन डिवाइस के लिए यह लगभग निरंतर होता है)।
प्र: LoadLog के लिए अधिकतम तिथि सीमा क्या है?
प्रति रिक्वेस्ट अधिकतम 30 दिन की सीमा अनुशंसित है। बड़ी सीमाओं के लिए लगातार समय-खंडों के साथ कई रिक्वेस्ट करें।
प्र: क्या मैं एक साथ कई बायोमेट्रिक टेम्पलेट वाला यूज़र जोड़ सकता हूँ?
हाँ। Template ऐरे में कई प्रविष्टियाँ स्वीकार्य हैं। उदाहरण के लिए, ऑपरेशन #27 एक ही रिक्वेस्ट में Card + Fingerprint + Password + Face + Palm + UserPhoto वाला यूज़र जोड़ता है।
प्र: RESTful कमांड भेजते समय डिवाइस ऑफ़लाइन हो तो क्या होगा?
Biometric Gateway कमांड को कतार में रखता है और डिवाइस के दोबारा कनेक्ट होने पर अपने-आप डिलीवर करता है। यदि डिवाइस टाइमआउट अवधि में जवाब नहीं देता, तो आपको स्टेटस कोड 5 (Device Offline) मिलेगा।
प्र: कमांड का परिणाम कैसे जाँचूँ?
RESTful रिस्पॉन्स में StatusCode फ़ील्ड होती है। कोड 0 का अर्थ सफलता है। त्रुटि कोड और उनके अर्थों की पूरी सूची के लिए रिस्पॉन्स स्टेटस कोड देखें।
प्र: क्या मैं फ़िंगरप्रिंट एनरोलमेंट दूर से ट्रिगर कर सकता हूँ?
हाँ। ऑपरेशन #35 EnrollFingerPrint ऑन-डिवाइस एनरोलमेंट सत्र ट्रिगर करता है। हालाँकि, उँगली स्कैन करने के लिए यूज़र का डिवाइस पर शारीरिक रूप से मौजूद होना आवश्यक है।

सुरक्षा और नेटवर्किंग

प्र: क्या मैं callback के लिए HTTPS उपयोग कर सकता हूँ?
हाँ। पोर्ट 443 पर मान्य SSL सर्टिफ़िकेट के साथ HTTPS पूरी तरह समर्थित है और प्रोडक्शन के लिए अनुशंसित है।
प्र: क्या एन्क्रिप्शन अनिवार्य है?
नहीं। AES-256 एन्क्रिप्शन वैकल्पिक है। इसे सक्षम करने के लिए API Monitor में Security Key कॉन्फ़िगर करें। सक्षम होने पर सभी JSON पेलोड Base64 एन्कोडिंग के साथ AES/ECB/PKCS5PADDING से एन्क्रिप्ट/डिक्रिप्ट होते हैं।
प्र: मैं कैसे सत्यापित करूँ कि callback वास्तव में Cams से आया है?
हर callback में AuthToken फ़ील्ड होती है। उसकी तुलना अपने API Monitor में कॉन्फ़िगर किए टोकन से करें। मेल न खाने वाले टोकन वाली किसी भी रिक्वेस्ट को अस्वीकार करें।
प्र: मुझे कौन-से पोर्ट खोलने चाहिए?
प्रोडक्शन के लिए पोर्ट 80 (HTTP) या 443 (HTTPS)। पोर्ट 8123 केवल टेस्टिंग के लिए उपलब्ध है। देखें समर्थित पोर्ट।
प्र: सर्वर पर डिप्लॉय किए बिना लोकली टेस्ट कैसे करूँ?
पोर्ट फ़ॉरवर्डिंग के साथ सार्वजनिक IP, या ngrok जैसे टनलिंग टूल का उपयोग करें। चरण-दर-चरण मार्गदर्शिका के लिए लोकल टेस्टिंग देखें।

डेटा और डिज़ाइन संबंधी विचार

प्र: API किस डेटा फ़ॉर्मेट का उपयोग करता है?
सभी रिक्वेस्ट और रिस्पॉन्स UTF-8 एन्कोडिंग के साथ रॉ JSON हैं। Content-Type: application/json हेडर का उपयोग करें। फ़ॉर्म एन्कोडिंग नहीं।
प्र: कौन-सा टाइमस्टैम्प फ़ॉर्मेट उपयोग होता है?
YYYY-MM-DD HH:mm:ss GMT +OFFSET (जैसे 2020-09-17 07:48:22 GMT +0530)। Time फ़ील्ड UTC में होती है; डिवाइस-स्थानीय टाइमस्टैम्प (जैसे LogTime, OperationTime) में भिन्न टाइमज़ोन ऑफ़सेट हो सकता है।
प्र: ऑफ़लाइन पंच और पूर्वव्यापी डेटा को कैसे संभालूँ?
अपना एप्लिकेशन ऐसा बनाएँ कि वह कालानुक्रमिक क्रम से बाहर आने वाले पंच स्वीकार करे। डिवाइस ऑफ़लाइन था तो दोबारा कनेक्ट होने पर वह कैश किए पंच पुश करेगा। आपको अटेंडेंस स्थिति को पूर्वव्यापी रूप से अपडेट करना पड़ सकता है (जैसे "absent" दिख रहे यूज़र को "present" करना)।
प्र: जब यूज़र के पास कई डिवाइस हों तो IN/OUT कैसे तय करूँ?
किसी यूज़र के सभी डिवाइस के पंच को LogTime के अनुसार क्रमबद्ध करें, फिर अपना बिज़नेस लॉजिक लागू करें। यदि यूज़र अलग-अलग मशीनों पर पंच करता है, तो केवल किसी एक डिवाइस की Type फ़ील्ड (CheckIn/CheckOut) पर निर्भर न रहें।
प्र: OperationID क्या है और इसका उपयोग कैसे करूँ?
हर ऑपरेशन के लिए एक अद्वितीय स्ट्रिंग पहचानकर्ता। इनबाउंड callback के लिए इसे Biometric Gateway जनरेट करता है। आउटबाउंड RESTful रिक्वेस्ट के लिए आपको हर रिक्वेस्ट पर एक अद्वितीय ID (UUID या टाइमस्टैम्प-आधारित) जनरेट करनी चाहिए। रिस्पॉन्स उसे वापस लौटाता है ताकि आप रिक्वेस्ट/रिस्पॉन्स के जोड़े मिला सकें।
प्र: बायोमेट्रिक टेम्पलेट कैसे संग्रहीत और ट्रांसमिट होते हैं?
बायोमेट्रिक डेटा (फ़िंगरप्रिंट, फ़ेस, पाम, यूज़र फ़ोटो) Template ऑब्जेक्ट की Data फ़ील्ड में Base64-एन्कोडेड होता है। फ़िंगरप्रिंट और फ़ेस टेम्पलेट में Size (बाइट लंबाई) और Index (स्लॉट नंबर) भी होते हैं। कार्ड नंबर और PIN सादे स्ट्रिंग होते हैं।

मूल्य निर्धारण और लाइसेंसिंग

प्र: API का लाइसेंस कैसे दिया जाता है?
प्रति बायोमेट्रिक मशीन। पहले वर्ष में API Activation + Yearly License आवश्यक है। बाद के वर्षों में केवल वार्षिक लाइसेंस नवीनीकरण आवश्यक है। मूल्य के लिए API की लागत देखें।
प्र: मेरा API लाइसेंस समाप्त हो जाए तो क्या होगा?
नवीनीकरण होने तक उस डिवाइस के लिए API संचार रुक जाता है। आपका मौजूदा डेटा प्रभावित नहीं होता, लेकिन कोई नया callback या RESTful कमांड प्रोसेस नहीं होगा।
प्र: क्या ऑन-प्रिमाइस विकल्प है?
हाँ। Protocol Engine Lite को केवल LAN या सेल्फ़-होस्टेड परिवेश के लिए आपके अपने सर्वर (Windows/Linux) पर इंस्टॉल किया जा सकता है। विवरण के लिए sales@camsbiometrics.com से संपर्क करें।

बायोमेट्रिक अटेंडेंस SDK

Cams पारंपरिक SDK उपलब्ध नहीं कराता। सभी ऑपरेशन मानक HTTP Callback और RESTful API से होते हैं — किसी लाइब्रेरी इंस्टॉलेशन की आवश्यकता नहीं।

SDK की आवश्यकता नहीं। संचार पूरी तरह Callback URL और RESTful HTTP एंडपॉइंट के ज़रिए Cams Protocol Engine द्वारा संभाला जाता है।

इससे किसी भी वेब प्लेटफ़ॉर्म के साथ इंटीग्रेशन सीधा-सादा हो जाता है:

OpenERPERPNextZoho PeopleSAPTallyHRAPPOdooकस्टम वेब ऐप्स

API की लागत

API लाइसेंस प्रति बायोमेट्रिक मशीन बिल किए जाते हैं। पहला वर्ष = एक्टिवेशन + लाइसेंस; बाद के वर्ष = केवल लाइसेंस नवीनीकरण।

सेवाUSDटिप्पणियाँ
Native Push — Cams और सत्यापित डिवाइस
API Activation$120प्रति मशीन एक बार।
Yearly API License$60 – $120वार्षिक नवीनीकरण आवश्यक।
Protocol Update (गैर-Cams)$120 – $280एक बार। गैर-Cams डिवाइस पर Cams प्रोटोकॉल सक्षम करता है।
Hybrid Push — ZKTeco, eSSL और सभी थर्ड-पार्टी ब्रांड
API Activation$150प्रति मशीन एक बार।
Yearly API License$90 – $150वार्षिक नवीनीकरण आवश्यक।
Hybrid Connector (असत्यापित)$150 – $300एक बार। Hybrid Push उपयोग करने वाले असत्यापित डिवाइस के लिए आवश्यक।
हार्डवेयर और अन्य
हार्डवेयर$220 – $720मॉडल के अनुसार भिन्न।
Protocol Engine Lite (ऑन-प्रिमाइस) — केवल LAN या सेल्फ़-होस्टेड परिवेश के लिए। लागत: $500–$10,000। विवरण के लिए सेल्स से संपर्क करें।