الانتقال إلى المحتوى الرئيسي
تُصدر ميزة تقدير العمر تحذيرات كلما انطلقت إشارة مخاطر في الفحص المشترك للعمر + كشف الحيوية السلبي: كأن يكون العمر المتوقع أقل من الحد الأدنى لديك، أو تعذر احتساب العمر، أو فشل الشخص في اختبار الحيوية، أو لم يتم العثور على أي وجه، أو تم اكتشاف هجوم العرض. تُدرج هذه الصفحة كل رمز، وما الذي يُشغّله، وكيفية تكوين استجابة سير العمل.

نظرة عامة

يُجري تقدير العمر دائمًا فحصين في استدعاء واحد — اختبار كشف الحيوية السلبي ونموذج انحدار العمر — لذا تتدفق تحذيراته عبر مسار كشف الحيوية المشترك وتُوسم بالميزة LIVENESS. تظهر هذه التحذيرات في التقرير ضمن age_estimation.warnings[] (واجهة API مستقلة) أو liveness_checks[].warnings[] (المدمجة في سير العمل). تم توثيق مخطط كائن التحذير تحت نماذج البيانات — كائن التحذير. الجهات المُصدِرة:
  • واجهة API مستقلة — يُنشئ الـ endpoint التحذيرات الخمسة المدرجة تحت مُشغِّلات الرفض.
  • سير العمل — الجهات المُصدِرة المشتركة لكشف الحيوية بالإضافة إلى الفحوصات المخصصة للعمر. تنطلق تحذيرات العمر فقط في مسارات تقدير العمر (سير عمل التحقق التكيفي من العمر أو عُقد سير العمل من النوع AGE_ESTIMATION) — تُبلغ خطوة الحيوية البسيطة عن العمر المقدر لكنها لا ترفع تحذيرات العمر مطلقًا.
مستويات الخطورة: مخاطر الرفض التلقائي الخمسة (NO_FACE_DETECTED و LIVENESS_FACE_ATTACK و FACE_IN_BLOCKLIST و AGE_BELOW_MINIMUM و AGE_NOT_DETECTED) تكون دائمًا بقيمة log_type: "error" وتفرض الحالة Declined؛ أما المخاطر المتبقية فتتحول إلى error / warning / information استنادًا إلى الحدود أو الإجراء المكوّن.

مُشغِّلات الرفض

في واجهة API مستقلة، يكون القرار Declined كلما انطلق أي تحذير:
  • العمر أقل من الحد — العمر المتوقع أقل تمامًا من age_estimation_decline_threshold (الافتراضي 18؛ تُعطّل القيمة 0 فحص العمر). يرفع AGE_BELOW_MINIMUM.
  • لم يتم احتساب العمر — تعذر تقدير عمر الوجه (لا يوجد وجه يمكن اكتشافه، أو لا يوجد وجه صالح للاستخدام لنموذج العمر). يرفع AGE_NOT_DETECTED.
  • درجة الحيوية عند الحد أو أقل منه — score <= face_liveness_score_decline_threshold (الافتراضي 30)؛ تُحسب درجة null على أنها 0. يرفع LOW_LIVENESS_SCORE. يتم كتمه عند انطلاق NO_FACE_DETECTED — فالأمران متنافيان.
  • لم يتم اكتشاف أي وجه — لم يعثر نموذج الحيوية على أي وجه. يرفع NO_FACE_DETECTED.
  • هجوم العرض — حدد نموذج الحيوية وجود شاشة، أو صورة مطبوعة، أو قناع، أو أي نوع آخر من الانتحال. يرفع LIVENESS_FACE_ATTACK.
في سير العمل، تقارن فحوصات العمر، العمر المقدر المقتطع (بالسنوات الكاملة) بالحدود المكوّنة:
  • مع تفعيل الإجراء البديل للتحقق من الهوية (enable_id_verification_fallback، مفعّل افتراضيًا): يؤدي العمر الذي يقل عن borderline_minimum_age_threshold (الافتراضي 18) إلى رفع AGE_BELOW_MINIMUM؛ وتُوجَّه الأعمار الواقعة في النطاق الحدي (حتى borderline_maximum_age_threshold) إلى التحقق من المستندات بدلاً من رفع تحذير، ولا يُرفع AGE_NOT_DETECTED مطلقًا — حيث يتم توجيه العمر غير المكتشف إلى التحقق من المستندات أيضًا.
  • مع تعطيل الإجراء البديل: يؤدي عدم وجود عمر مقدر إلى رفع AGE_NOT_DETECTED، ويؤدي العمر الأقل من minimum_age_threshold (الافتراضي 18) إلى رفع AGE_BELOW_MINIMUM.

المخاطر القابلة للتكوين

تتيح لك المخاطر التالية ضبط الحدود أو الإجراء حسب إعداد سير العمل: تفحص جلسات سير العمل الوجه أيضًا مقابل قوائمك: حيث يؤدي FACE_IN_BLOCKLIST دائمًا إلى الرفض التلقائي (error)، بينما ينقل POSSIBLE_FACE_IN_BLOCKLIST الجلسة إلى In Review.

التحذيرات الناتجة

مثال

في payload الخاصة بقرار سير العمل (liveness_checks[].warnings[])، يحمل كل تحذير أيضاً node_id يحدد عقدة سير العمل التي أطلقته.

أنواع التحذيرات

يتم تعيين مستوى خطورة لكل خطر بناءً على تكوين التطبيق الخاص بك. وتندرج مستويات الخطورة تحت ثلاث فئات:

ذات صلة

آخر تعديل في ٧ نوفمبر ٢٠٢٦