الانتقال إلى المحتوى الرئيسي

التقاط المستندات

التقاط وثائق الهوية. يعرض SDK إطارًا لمساعدة المستخدم في تحديد موضع المستند؛ وبعد تحديد الموضع، يضغط المستخدم على الزر لالتقاط الصورة.

لا يوجد تحقق من المحتوى

لا يُجري SDK أي نوع من التحقق على ما يجري التقاطه.

إطارات المستندات المتاحة
الإطارالوصف
DocumentCameraTypes.CPFالتقاط CPF
DocumentCameraTypes.CNHالتقاط CNH المفتوح
DocumentCameraTypes.CNH_FRENTEالتقاط الوجه الأمامي لـ CNH
DocumentCameraTypes.CNH_VERSOالتقاط الوجه الخلفي لـ CNH
DocumentCameraTypes.RG_FRENTEالتقاط الوجه الأمامي لـ RG
DocumentCameraTypes.RG_VERSOالتقاط الوجه الخلفي لـ RG
DocumentCameraTypes.RG_FRENTE_NOVOالتقاط الوجه الأمامي لـ RG الجديد
DocumentCameraTypes.RG_VERSO_NOVOالتقاط الوجه الخلفي لـ RG الجديد
DocumentCameraTypes.OTHERS("descrição")إطار عام لأي مستند آخر
الإطار العام

إذا كنت بحاجة إلى التقاط مستند لا يوجد له إطار محدد (مثل RNE)، فاستخدم DocumentCameraTypes.OTHERS("description") — إطار مستطيل عام يمكن استخدامه لتوجيه أي التقاط.

للاطلاع على القائمة الكاملة لأنواع المستندات المدعومة، راجع مرجع API > التعدادات.

حجم الإطار

يُوصى بتهيئة حجم الإطار داخل تطبيقك لتحسين منطقة الالتقاط.

تأثير CSS

يمكن أن تتأثر وظيفة الإطار بأنظمة التصميم التي تحتوي على مكونات شبكية (Bootstrap، Material-UI، إلخ). للحد من هذه المشكلة، ضع الإطار (id="box-camera") في موضع لا يرث منه قواعد CSS غير مرغوب فيها.

أحِط الإطار بعنصر أصل للتحكم في أبعاده:

<div class="container">
<div id="box-camera"></div>
</div>
.container {
width: 800px;
height: 600px;
position: relative;
}

حافظ على نسبة ارتفاع إلى عرض مناسبة لتسهيل تأطير وجه المستخدم.

تغيير الحجم عبر أدوات المطور

لن تعمل الاختبارات التي تتضمن تغيير حجم الشاشة من خلال وضع المطور في المتصفح كما هو متوقع. قم بتغيير حجم نافذة المتصفح مباشرةً.

بدء التقاط مستند
الخطوة 1 — تنفيذ كائن callback

يستخدم Web SDK كائن callback — يُمرَّر إلى open() — للتعامل مع أحداث النجاح والأخطاء. كلا المعالجَين إلزاميان:

المعالجمتى يُستدعى
on.success(obj)اكتمل الالتقاط بنجاح — يستقبل كائنًا يحتوي على base64 وencrypted
on.error(error)حدث خطأ أثناء الجلسة — يستقبل كائن ErrorBio
const callback = {
on: {
success: (obj) => {
console.log(obj.base64);
console.log(obj.encrypted);
},
error: (error) => {
console.error(error);
}
}
};
كائن callback إلزامي

كائن callback إلزامي. إذا لم يُنفَّذ بشكل صحيح (بحيث يغطي كلًّا من حدثَي success وerror)، فإن SDK يُطلق استثناءً يُعرض في وحدة تحكم المستخدم إذا لم يُعالَج.

الخطوة 2 — بناء الكاميرا وتجهيز جلسة المستند

ابنِ نسخة الكاميرا واستدعِ prepareDocumentCamera مع تمرير UnicoConfig ونوع DocumentCameraTypes المطلوب:

const unicoCamera = unicoCameraBuilder.build();

const config = new UnicoConfig()
.setHostname("<YOUR_HOSTNAME>")
.setHostKey("<YOUR_HOST_KEY>");

unicoCamera.prepareDocumentCamera(
config,
DocumentCameraTypes.CNH
).then(cameraOpener => {
cameraOpener.open(callback);
}).catch(error => {
console.error(error);
});

للاطلاع على معالجة النتيجة الكاملة، راجع استقبال النتيجة.