دليل التكامل مع NELC LRS — الدليل الرسمي الشامل
دليل التكامل مع NELC LRS — الدليل الرسمي الشامل
المؤلف: فريق Bzzix التقني
آخر تحديث: 2026
المستوى: متوسط إلى متقدم
الجهة: المركز الوطني للتعلم الإلكتروني (NELC)
الوقت المقدر للقراءة: 30 دقيقة
مقدمة
المركز الوطني للتعلم الإلكتروني (NELC) هو الجهة الحكومية المسؤولة عن تطوير وتنظيم التعليم الإلكتروني في المملكة العربية السعودية. يُشترط لاعتماد أي برنامج تدريبي إلكتروني رسمياً في المملكة أن يكون متوافقاً مع منظومة NELC، والتي تستخدم معيار xAPI لتلقي بيانات المتعلمين.
هذا الدليل يشرح بالتفصيل الكامل كيفية التكامل الفني مع NELC LRS.
1. نظرة عامة على نظام NELC
1.1 ما هو NELC LRS؟
NELC LRS هو النظام المركزي لتخزين سجلات التعلم في المملكة العربية السعودية. يستقبل جمل xAPI من جميع المنصات التعليمية المرتبطة به ويوفر:
- تخزين آمن لبيانات المتعلمين
- تقارير الامتثال للمؤسسات
- التحقق من صحة الشهادات
- إحصاءات التعليم على المستوى الوطني
1.2 منظومة NELC الكاملة
┌────────────────────────────────────────────────────────────┐
│ منظومة NELC │
│ │
│ ┌──────────┐ xAPI ┌─────────────┐ │
│ │ Moodle │ ──────────► │ │ │
│ └──────────┘ │ NELC LRS │ │
│ ┌──────────┐ xAPI │ │ ► تقارير │
│ │WordPress │ ──────────► │ (مستضاف │ ► اعتمادات │
│ └──────────┘ │ على │ ► إحصاءات │
│ ┌──────────┐ xAPI │ NELC │ │
│ │ Laravel │ ──────────► │ Cloud) │ │
│ └──────────┘ └─────────────┘ │
│ ┌──────────┐ xAPI ↕ │
│ │ Mobile │ ──────────► بوابة NELC │
│ └──────────┘ للمؤسسات │
└────────────────────────────────────────────────────────────┘
1.3 الجدول الزمني للامتثال
| المرحلة | الوصف | الموعد |
|---|---|---|
| التسجيل | تسجيل المؤسسة في بوابة NELC | قبل الإطلاق بـ 30 يوم |
| الاختبار | اختبار التكامل في بيئة Staging | قبل الإطلاق بـ 14 يوم |
| المراجعة | مراجعة NELC للـ Statements | قبل الإطلاق بـ 7 أيام |
| الاعتماد | الحصول على اعتماد NELC | يوم الإطلاق |
1.4 الأدوات الرسمية المفتوحة المصدر للربط (Official Integration Tools)
يوفر المركز الوطني للتعليم الإلكتروني (NELC) حزماً وإضافات برمجية رسمية ومفتوحة المصدر لتسهيل دمج وتكامل معايير xAPI للأنظمة البرمجية الأكثر استخداماً:
- الربط مع WordPress LMS (أي إضافة تعليمية مثل LearnDash أو Tutor LMS):
- إضافة Tutor LMS لربط LRS: tutor-lms-lrs-plugin
- إضافة LearnDash لربط LRS: learndash-lrs-plugin
- الربط مع Moodle:
- إضافة Moodle LRS Plugin: moodle-lrs-plugin
- الربط مع Laravel (مكتبة تكامل مخصصة):
- حزمة Laravel LRS Package: laravel-lrs-package
2. الحصول على بيانات اعتماد NELC
2.1 خطوات التسجيل المؤسسي
الخطوة 1: التسجيل في بوابة NELC
- اذهب إلى: nelc.gov.sa
- انقر على "تسجيل مؤسسي"
- أدخل بيانات المؤسسة:
- اسم المؤسسة
- رقم السجل التجاري
- بيانات التواصل الرئيسي
- نوع المؤسسة (حكومية / خاصة)
الخطوة 2: إنشاء طلب LRS بعد الموافقة على التسجيل:
- انتقل إلى "إدارة الأنظمة"
- انقر "طلب ربط LRS جديد"
- أدخل:
- اسم نظامك (Moodle / WordPress / Laravel / مخصص)
- Endpoint الخاص بمنصتك
- عدد المتعلمين المتوقع
الخطوة 3: الحصول على Credentials ستحصل على بريد إلكتروني يحتوي على:
LRS Endpoint: https://lrs.nelc.gov.sa/xapi/
Client Key: NELC-xxxx-xxxx-xxxx
Client Secret: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Institution ID: INST-XXXXXXX
⚠️ تحذير: احتفظ بهذه البيانات بسرية تامة. لا تضعها في كود مفتوح المصدر.
3. بنية API الخاصة بـ NELC
3.1 Endpoints الرئيسية
| الـ Endpoint | الطريقة | الوصف |
|---|---|---|
/xapi/statements |
POST | إرسال Statement أو Statements |
/xapi/statements |
GET | استرجاع Statements |
/xapi/activities/state |
PUT/GET | حفظ حالة النشاط |
/xapi/activities/profile |
PUT/GET | ملف النشاط |
/xapi/agents/profile |
PUT/GET | ملف المتعلم |
/xapi/about |
GET | معلومات LRS |
3.2 Headers المطلوبة
POST https://lrs.nelc.gov.sa/xapi/statements HTTP/1.1
Authorization: Basic base64(client_key:client_secret)
Content-Type: application/json; charset=utf-8
X-Experience-API-Version: 1.0.3
Accept: application/json
3.3 حساب Authorization Header
// PHP
$credentials = base64_encode($clientKey . ':' . $clientSecret);
$authHeader = 'Basic ' . $credentials;
// مثال بالقيم
// Client Key: NELC-1234-ABCD
// Client Secret: mysecret123
// base64("NELC-1234-ABCD:mysecret123") = "TkVMQy0xMjM0LUFCQ0Q6bXlzZWNyZXQxMjM="
// Authorization: Basic TkVMQy0xMjM0LUFCQ0Q6bXlzZWNyZXQxMjM=
# Bash
CREDENTIALS=$(echo -n "NELC-1234-ABCD:mysecret123" | base64)
echo "Authorization: Basic $CREDENTIALS"
4. الحقول الإلزامية لـ NELC
4.1 بنية Statement المعتمدة من NELC
{
"actor": {
"objectType": "Agent",
"name": "اسم المتعلم",
"mbox": "mailto:learner@institution.sa"
},
"verb": {
"id": "http://adlnet.gov/expapi/verbs/completed",
"display": {
"ar": "أكمل",
"en-US": "completed"
}
},
"object": {
"objectType": "Activity",
"id": "https://your-platform.com/activities/course-001",
"definition": {
"name": {
"ar": "عنوان الدورة",
"en-US": "Course Title"
},
"type": "http://adlnet.gov/expapi/activities/course"
}
},
"result": {
"completion": true,
"success": true,
"score": {
"scaled": 0.85,
"raw": 85,
"min": 0,
"max": 100
},
"duration": "PT1H30M"
},
"context": {
"platform": "اسم منصتك",
"language": "ar",
"extensions": {
"https://nelc.gov.sa/extensions/institution-id": "INST-XXXXXXX",
"https://nelc.gov.sa/extensions/program-id": "PROG-001"
}
},
"timestamp": "2026-07-30T10:00:00+03:00"
}
4.2 قواعد التحقق من الصحة
| الحقل | القيمة المطلوبة | تنسيق محدد |
|---|---|---|
actor.mbox |
بريد إلكتروني صالح | mailto:email@domain.sa |
verb.id |
URI معتمد من ADL | http://adlnet.gov/... |
object.id |
URI فريد للنشاط | URL كامل |
context.extensions["institution-id"] |
معرّف NELC للمؤسسة | INST-XXXXXXX |
timestamp |
وقت ISO 8601 | 2026-07-30T10:00:00+03:00 |
5. أنواع الأنشطة المعترف بها من NELC
5.1 Activity Types المعتمدة
| النوع | URI | الوصف |
|---|---|---|
| دورة | http://adlnet.gov/expapi/activities/course |
دورة تدريبية كاملة |
| وحدة | http://adlnet.gov/expapi/activities/module |
وحدة داخل دورة |
| درس | http://adlnet.gov/expapi/activities/lesson |
درس داخل وحدة |
| اختبار | http://adlnet.gov/expapi/activities/assessment |
اختبار وتقييم |
| سؤال | http://adlnet.gov/expapi/activities/question |
سؤال منفرد |
| محاكاة | http://adlnet.gov/expapi/activities/simulation |
محاكاة تفاعلية |
| فيديو | https://w3id.org/xapi/video/activity-type/video |
مقطع فيديو |
| اجتماع | http://adlnet.gov/expapi/activities/meeting |
اجتماع أو جلسة |
| برنامج | http://adlnet.gov/expapi/activities/program |
برنامج تدريبي |
5.2 الأفعال المعتمدة لكل نوع نشاط
للدورات والوحدات:
"verb": { "id": "http://adlnet.gov/expapi/verbs/completed" }
"verb": { "id": "http://adlnet.gov/expapi/verbs/launched" }
"verb": { "id": "http://adlnet.gov/expapi/verbs/experienced" }
"verb": { "id": "http://adlnet.gov/expapi/verbs/attempted" }
للاختبارات:
"verb": { "id": "http://adlnet.gov/expapi/verbs/passed" }
"verb": { "id": "http://adlnet.gov/expapi/verbs/failed" }
"verb": { "id": "http://adlnet.gov/expapi/verbs/answered" }
للفيديو:
"verb": { "id": "https://w3id.org/xapi/video/verbs/played" }
"verb": { "id": "https://w3id.org/xapi/video/verbs/paused" }
"verb": { "id": "https://w3id.org/xapi/video/verbs/completed" }
6. متطلبات التقارير والامتثال
6.1 البيانات الدنيا المطلوبة
لكل دورة تدريبية مرتبطة بـ NELC، يجب إرسال على الأقل:
- Statement البداية:
launchedعند بدء المتعلم الدورة - Statements التقدم:
attemptedأوexperiencedللوحدات - Statement الاختبار:
passedأوfailedللتقييم النهائي - Statement الإكمال:
completedعند إنهاء الدورة
6.2 تقارير الامتثال الدورية
NELC يتطلب:
- ✅ إرسال فوري (Real-time) للـ Statements الحرجة
- ✅ لا تأخير يتجاوز 24 ساعة لأي Statement
- ✅ الاحتفاظ بـ Logs محلية لمدة 90 يوماً
6.3 متطلبات البيانات الشخصية
{
"actor": {
"name": "الاسم الكامل",
"mbox": "mailto:email@domain.com"
}
}
⚠️ تنبيه الخصوصية: لا تُرسل بيانات شخصية إضافية غير مصرّح بها (رقم الهوية، رقم الجوال) إلا إذا طلبتها NELC صراحةً.
7. قائمة الامتثال الكاملة
7.1 التحقق التقني
الإعداد الأساسي:
- الحصول على Credentials من NELC
- LRS Endpoint صحيح ومفعّل
- Authorization Header يعمل بشكل صحيح
- X-Experience-API-Version يساوي
1.0.3 - Content-Type يساوي
application/json; charset=utf-8
بنية الـ Statements:
- Actor يحتوي على
mboxأوaccountصالح - Verb يستخدم URI من ADL Registry
- Object ID هو URL كامل وفريد
- Timestamp بتنسيق ISO 8601 مع Timezone
- Context يحتوي على institution-id من NELC
الأحداث الإلزامية:
- إرسال
launchedعند بدء الدورة - إرسال
completedعند إكمال الدورة - إرسال
passed/failedلكل اختبار - تضمين
scoreفي نتائج الاختبار
الأداء والموثوقية:
- Retry Logic مُعدَّ (3 محاولات على الأقل)
- Queue محلية للـ Statements الفاشلة
- Monitoring والتنبيهات مُفعَّلة
- Log محلي يحتفظ بـ 90 يوماً
7.2 التحقق الوظيفي
- اختبار إرسال Statement تجريبي ناجح
- NELC استقبل وأكّد الـ Statements
- التحقق من استرجاع Statements من LRS
- اختبار إرسال مجمّع (Batch) ناجح
- اختبار سيناريوهات الفشل وإعادة المحاولة
8. اختبار التكامل مع NELC
8.1 بيئة الاختبار (Staging)
قبل الإطلاق الرسمي، اختبر على Staging:
Staging Endpoint: https://staging-lrs.nelc.gov.sa/xapi/
8.2 سيناريوهات الاختبار الإلزامية
السيناريو 1: إكمال دورة كاملة
# خطوة 1: بدء الدورة
POST /xapi/statements
Body: { "verb": "launched", "object": "course-001" }
# خطوة 2: إكمال الاختبار
POST /xapi/statements
Body: { "verb": "passed", "result": { "score": { "raw": 90 } } }
# خطوة 3: إكمال الدورة
POST /xapi/statements
Body: { "verb": "completed", "result": { "completion": true } }
السيناريو 2: التحقق من البيانات المستقبَلة
# استرجاع Statements للمتعلم
GET /xapi/statements?agent={"mbox":"mailto:student@test.com"}
8.3 أداة اختبار NELC
NELC توفر أداة اختبار رسمية:
- رابط الأداة: nelc.gov.sa/lrs-test (راجع البوابة الرسمية)
- تدخل Credentials وتُرسل Statements تجريبية
- الأداة تُعطي تقرير امتثال فوري
9. أخطاء NELC الشائعة وحلولها
خطأ: "Institution ID not found"
{
"error": "Institution ID INST-XXXX not registered"
}
الحل: تأكد من أن institution-id في الـ Context يطابق تماماً ما حصلت عليه من NELC.
خطأ: "Invalid Actor"
{
"error": "Actor mbox must be a valid mailto URI"
}
الحل:
// ❌ خاطئ
"mbox": "ahmed@example.com"
// ✅ صحيح
"mbox": "mailto:ahmed@example.com"
خطأ: "Statement timestamp out of range"
{
"error": "Timestamp is too old (>30 days)"
}
الحل: أرسل الـ Statements فور حدوثها. NELC لا يقبل Statements أقدم من 30 يوماً.
خطأ: "Verb not recognized"
الحل: استخدم فقط URIs من http://adlnet.gov/expapi/verbs/ أو Profiles المعتمدة.
انقطاع الاتصال المتكرر
الأسباب: IP Blocking أو Rate Limiting
الحل:
- تأكد من IP Whitelist مع NELC
- لا ترسل أكثر من 1000 Statement في الدقيقة
10. الاتصال بـ NELC للدعم
قنوات الدعم الرسمية
| القناة | التفاصيل |
|---|---|
| البوابة الرسمية | nelc.gov.sa |
| بريد الدعم | support@nelc.gov.sa |
| الهاتف | +966-11-XXXXXXX |
| ساعات العمل | الأحد – الخميس، 8ص – 4م |
ما تحتاجه عند التواصل مع NELC
- رقم المؤسسة في NELC
- نسخة من Statement المشكلة
- Logs الخطأ من نظامك
- وقت حدوث المشكلة (مع Timezone)
11. [خدمة Bzzix] — الإعداد والتكامل الكامل مع NELC
🏆 خدمة التكامل الشاملة مع NELC من Bzzix
Bzzix متخصصة في الربط بين منصات التعليم الإلكتروني ومنظومة NELC. نقدم خدمة تكامل كاملة تضمن الامتثال الكامل والاعتماد الرسمي.
حزم خدمات Bzzix
🔹 الحزمة الأساسية
- ✅ تحليل بنية نظامك الحالي
- ✅ إعداد الاتصال بـ NELC LRS
- ✅ اختبار أساسي للامتثال
- ✅ تقرير الامتثال
🔸 الحزمة المتقدمة
- ✅ كل ما في الحزمة الأساسية
- ✅ تطوير Integration مخصص
- ✅ اختبار شامل لجميع السيناريوهات
- ✅ تدريب الفريق التقني
- ✅ دعم فني 30 يوماً
🔶 حزمة الإدارة الكاملة
- ✅ كل ما في الحزمة المتقدمة
- ✅ مراقبة مستمرة للـ Statements
- ✅ تقارير شهرية للامتثال
- ✅ دعم فني مستمر لمدة عام
- ✅ ضمان الاعتماد من NELC
زمن التسليم: 3-7 أيام عمل
الضمان: نضمن الحصول على اعتماد NELC أو نُعيد المحاولة مجاناً
📧 البريد الإلكتروني: info@bzzix.com
📞 الهاتف/واتساب: +966-XX-XXXXXXX
🌐 الموقع: bzzix.com
📅 احجز استشارة مجانية: bzzix.com/consultation
12. مراجع ومصادر
- NELC الموقع الرسمي
- xAPI Specification 1.0.3
- ADL Verb Registry
- xAPI Activity Types
- Bzzix خدمات التكامل
© 2026 Bzzix — جميع الحقوق محفوظة. هذه الوثيقة جزء من مجموعة وثائق xAPI الرسمية لمنصة Bzzix.
تنبيه: معلومات NELC تتغير بانتظام. تحقق دائماً من الموقع الرسمي للحصول على آخر المتطلبات.