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

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

التقاط وثائق الهوية. يعرض 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);
});

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