> ## Documentation Index
> Fetch the complete documentation index at: https://docs.didit.me/llms.txt
> Use this file to discover all available pages before exploring further.

# تحذيرات التحقق من الموقع ورموز LOCATION_

> يعرض Didit تحذيرات LOCATION_ لفحص الموقع: السياج الجغرافي، الدقة، الانتحال، VPN، المسافة، والإذن، مع المُشغِّل والإجراء الافتراضي.

## نظرة عامة

تشير التحذيرات في تقرير الموقع إلى كل حالة تكتشفها Didit أثناء خطوة التحقق من الموقع.
وتظهر هذه التحذيرات في مصفوفة `warnings[]` لكل عنصر ضمن `geolocation_checks[]` (راجع [تقرير الموقع](https://docs.didit.me/ar/core-technology/location-verification/report-location-verification.md)).

يتألف كل تحذير من ثلاث طبقات:

1. **كود `risk`**: معرّف ثابت يمكنك مطابقته، ويبدأ دائماً بـ `LOCATION_`.
2. **نوع `log_type`**: إما `information` أو `warning` أو `error`. بالنسبة للمخاطر القابلة للتكوين، فإنه يتبع الإجراء المُهيأ: يمنح `NO_ACTION` القيمة `information`، ويمنح `REVIEW` القيمة `warning`، بينما يمنح `DECLINE` القيمة `error`.
3. **التأثير على القرار**: يحدد الإجراء الأقوى بين التحذيرات حالة `status` الخاصة بالخطوة؛ حيث يمنح `REVIEW` الحالة `In Review`، ويمنح `DECLINE` الحالة `Declined`، بينما يترك `NO_ACTION` الحالة كما هي دون تعديل.

يتحول عدم اليقين والرفض افتراضياً إلى `REVIEW`، ولا يكون `DECLINE` أبداً: فرفض الإذن أو تحديد موقع داخل مبنى أو نصف القطر الواسع لا يُعد دليلاً على الاحتيال.
تُثار التحذيرات المتعلقة بالدقة، والحداثة، والمناطق، والمسافة، وأدوات إخفاء الهوية في المحاولة الأخيرة فقط، لذا فإن الشخص الذي ينجح في المحاولة الثانية لا يحمل أي تحذير.
يمكن لقواعد `status_rules` المخصصة على العقدة الإبقاء على الحالة أو رفعها، ولكن لا يمكنها خفضها أبداً.

## شروط الرفض التلقائي

ترفض هذه الحالات الخطوة دائماً، مع `log_type: "error"`، وليس لها مفتاح إجراء.

| المخاطر | المُشغِّل |
| - | - |
| `LOCATION_REPLAY_DETECTED` | تضمّن الإرسال تحدياً ينتمي إلى جلسة أخرى. تحصل كل محاولة على تحدٍ واحد صالح للاستخدام لمرة واحدة ومرتبط بجلستها، لذا فإن تقديمه في مكان آخر يُعد إعادة إرسال. |
| `LOCATION_INTEGRITY_FAILED` | أُرفق إقرار بالجهاز مع الموقع وفشل في التحقق. |

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

الإجراءات الافتراضية هي إجراءات الخطوة التي لا تتضمن `geolocation_preset`.
ضمن `licensing`، يتم تعيين `LOCATION_VPN_DETECTED` و`LOCATION_TOR_DETECTED` و`LOCATION_EMULATOR_DETECTED` افتراضياً إلى `DECLINE`، ويتم تعيين `LOCATION_PROXY_DETECTED` إلى `REVIEW`.
ضمن `fraud_screening`، يصبح كل إجراء افتراضي قيمته `DECLINE` عبارة عن `REVIEW`، وتتحول نتائج إخفاء الهوية الأربعة تلك إلى `REVIEW`.
الإجراء الذي تحدده صراحةً له الأولوية دائماً.

### الإذن والتوافر

| المخاطر | المُشغِّل | مفتاح الإعداد | الافتراضي |
| - | - | - | - |
| `LOCATION_PERMISSION_DENIED` | رفض الشخص مطالبة تحديد الموقع أو تجاهلها في كل محاولة مسموح بها. هذا خيار، وليس دليلاً على الاحتيال. | `geolocation_permission_denied_action` | `REVIEW` |
| `LOCATION_RESTRICTED` | رفض نظام التشغيل الطلب قبل أن يتمكن الشخص من الإجابة: خدمات الموقع معطلة على مستوى الجهاز بالكامل، أو تحظرها سياسة إدارة الأجهزة أو الرقابة الأبوية. | `geolocation_unavailable_action` | `REVIEW` |
| `LOCATION_UNAVAILABLE` | قبل الجهاز الطلب ولكن نظام تحديد المواقع الخاص به لم يُرجع أي موقع في كل محاولة مسموح بها. أمر معتاد داخل المباني وتحت الأرض. | `geolocation_unavailable_action` | `REVIEW` |
| `LOCATION_TIMEOUT` | لم يصل أي موقع خلال `geolocation_timeout_seconds` في أي محاولة مسموح بها. | `geolocation_unavailable_action` | `REVIEW` |
| `LOCATION_SKIPPED` | يسمح سير العمل بالتخطي وتابع الشخص دون مشاركة الموقع. | `geolocation_unavailable_action` | `REVIEW` |
| `LOCATION_UNSUPPORTED_CLIENT` | وصلت الجلسة إلى تطبيق أو إصدار SDK لا يطبق هذه الخطوة. أغلقت Didit الخطوة بدلاً من ترك الجلسة معلقة. قم بترقية SDK. | `geolocation_unavailable_action` | `REVIEW` |

### الدقة والحداثة

| المخاطر | المُشغِّل | مفتاح الإعداد | الافتراضي |
| - | - | - | - |
| `LOCATION_LOW_ACCURACY` | كان لأفضل موقع نصف قطر أوسع من `geolocation_max_accuracy_radius_m`. هذا مقياس للثقة، وليس للنزاهة. | `geolocation_low_accuracy_action` | `REVIEW` |
| `LOCATION_ACCURACY_UNDETERMINED` | لم يتضمن الموقع أي نصف قطر في أي محاولة مسموح بها، لذلك لا يوجد ما يثبت استيفاءه للحد. ولا يُحتسب أبداً على أنه استوفاه. | `geolocation_low_accuracy_action` | `REVIEW` |
| `LOCATION_STALE_FIX` | تم قياس الموقع قبل أكثر من `geolocation_max_age_seconds` من استلام Didit له. | `geolocation_stale_fix_action` | `REVIEW` |
| `LOCATION_APPROXIMATE_ONLY` | كان الموقع الدقيق مطلوباً ومنح الشخص موقعاً تقريبياً (دقة منخفضة في iOS، أو "تقريبي" في Android). لا يظهر أبداً على الويب، حيث يتعذر تمييز ذلك. | `geolocation_approximate_action` | `REVIEW` |
| `LOCATION_CLOCK_SKEW` | أفاد الجهاز بأنه قاس الموقع في المستقبل مقارنة بساعة Didit. للإعلام فقط: تعتمد الحداثة على وقت الاستلام لدى Didit. | لا يوجد | معلومات |

### الانتحال وسلامة البيانات

| المخاطر | المُشغِّل | مفتاح الإعداد | الافتراضي |
| - | - | - | - |
| `LOCATION_MOCK_PROVIDER_DETECTED` | أبلغ Android بأن الموقع جاء من موفّر موقع وهمي. تضبطه أدوات الاختبار وإمكانية الوصول أيضاً، لذا فإن الإجراء قابل للتكوين. | `geolocation_mock_location_action` | `REVIEW` |
| `LOCATION_SIMULATED_BY_SOFTWARE` | أبلغ iOS بأن الموقع تمت محاكاته برمجياً. | `geolocation_mock_location_action` | `REVIEW` |
| `LOCATION_INTEGRITY_MISSING` | أرسل تطبيق أصلي موقعاً بدون إقرار الجهاز. يُسجل الويب على أنه غير مدعوم، وليس مفقوداً. | `geolocation_integrity_missing_action` | `NO_ACTION` |
| `LOCATION_EMULATOR_DETECTED` | أبلغ التطبيق بأنه يعمل على محاكٍ أو جهاز افتراضي. لا يمكن للمتصفحات الإبلاغ عن هذا. ما لم يكن الإجراء `NO_ACTION`، فإنه يُنهي الخطوة في تلك المحاولة. | `geolocation_emulator_action` | `NO_ACTION` |
| `LOCATION_VPN_DETECTED` | الاتصال الذي شارك الموقع يمر عبر VPN تجاري. ما لم يكن الإجراء `NO_ACTION`، يُطلب من الشخص إيقاف تشغيله والمحاولة مرة أخرى. | `geolocation_vpn_action` | `NO_ACTION` |
| `LOCATION_PROXY_DETECTED` | يمر الاتصال عبر وكيل مفتوح أو مجهول الهوية أو وكيل ترحيل خاص. | `geolocation_proxy_action` | `NO_ACTION` |
| `LOCATION_TOR_DETECTED` | الاتصال عبارة عن عقدة خروج Tor. | `geolocation_tor_action` | `NO_ACTION` |

### المناطق

| المخاطر | المُشغِّل | مفتاح الإعداد | الافتراضي |
| - | - | - | - |
| `LOCATION_OUTSIDE_GEOFENCE` | الموقع ودائرة الدقة الكاملة الخاصة به يقعان خارج كل منطقة مسموح بها. | `geolocation_geofencing_action` | `DECLINE` |
| `LOCATION_GEOFENCE_UNDETERMINED` | تصل دائرة الدقة إلى حافة تحدد النتيجة، أو لا يمكن تحديد دولة للموقع. لا يتم الإبلاغ عن عدم اليقين أبداً على أنه خارج المنطقة. | `geolocation_geofence_undetermined_action` | `REVIEW` |
| `LOCATION_IN_BLOCKED_AREA` | الموقع ودائرة الدقة الكاملة الخاصة به يقعان داخل منطقة محظورة. يُضاف هذا إلى نتيجة تقييم المناطق المسموح بها، وليس بديلاً عنه أبداً، ويحدد الإجراء الأكثر صرامة النتيجة. | `geolocation_blocked_area_action` | `DECLINE` |

### المسافة والسجل

| المخاطر | المُشغِّل | مفتاح الإعداد | الافتراضي |
| - | - | - | - |
| `LOCATION_IP_DISTANCE_MISMATCH` | موقع الجهاز وموقع IP متباعدان أكثر من `geolocation_ip_distance_km`، بعد طرح كلا نصفي القطر. ينتج هذا بشكل مشروع عن شبكة VPN، أو وكيل شركة، أو نقطة خروج مركزية لشركة الاتصالات. | `geolocation_ip_distance_action` | `REVIEW` |
| `LOCATION_DOCUMENT_DISTANCE_MISMATCH` | الموقع يبعد أكثر من `geolocation_document_distance_km` عن عنوان المستند. هذه إشارة ضعيفة، لأن العناوين يتم تحديد إحداثياتها الجغرافية بشكل تقريبي ويسافر الأشخاص. | `geolocation_document_distance_action` | `REVIEW` |
| `LOCATION_CONSECUTIVE_MISMATCHES` | كان هذا الفحص وفحوصات سابقة للشخص نفسه (نفس `vendor_data`) خارج منطقة مسموح بها، أو في منطقة محظورة، أو بعيدين جداً عن العنوان لـ`geolocation_consecutive_mismatch_count` مرات متتالية على الأقل. | `geolocation_consecutive_mismatch_action` | `REVIEW` |

## ما يراه الشخص

لا يتم توضيح بعض النتائج للشخص أبدًا، لأن تحديد الإشارة يُعلِم المحتال بما يجب تغييره.
تندرج `LOCATION_EMULATOR_DETECTED` و `LOCATION_MOCK_PROVIDER_DETECTED` و `LOCATION_SIMULATED_BY_SOFTWARE` و `LOCATION_REPLAY_DETECTED` و `LOCATION_INTEGRITY_FAILED` و `LOCATION_IP_DISTANCE_MISMATCH` ضمن هذه المجموعة: إذا أرجع المراجِع عملية التحقق، يقرأ الشخص سببًا عامًا، بينما يحتفظ payload القرار وwebhooks الخاصة بك بالتحذير الكامل.
تظهر شبكة VPN للشخص فقط كطلب لإيقاف تشغيل أي VPN وإعادة المحاولة، وتظهر المنطقة المحظورة فقط كقائمة بالأماكن التي تتوفر فيها الخدمة.

## مثال

```json theme={null}
{
  "risk": "LOCATION_LOW_ACCURACY",
  "log_type": "warning",
  "short_description": "Device location accuracy below the configured limit",
  "additional_data": {
    "accuracy_m": 1200.0,
    "accuracy_confidence": "p95",
    "max_accuracy_radius_m": 250
  },
  "node_id": "geolocation_1"
}
```

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

يتم تعيين مستوى خطورة لكل خطر بناءً على تكوين التطبيق الخاص بك. ومستويات الخطورة الثلاثة هي:

## مواضيع ذات صلة

* [تقرير التحقق من الموقع](https://docs.didit.me/ar/core-technology/location-verification/report-location-verification.md) - الحقول الموجودة بجانب `warnings[]`.
* [التحقق من الموقع](https://docs.didit.me/ar/core-technology/location-verification/overview.md) - كيفية عمل الخطوة.
* [تكوينات ميزات سير العمل](https://docs.didit.me/ar/management-api/workflows/feature-configs.md#التحقق-من-الموقع) - كل مفتاح إجراء.
* [نماذج البيانات - كائن التحذير](https://docs.didit.me/ar/reference/data-models.md#كائن-التحذير) - شكل كل مدخل في `warnings[]`.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.