إعداد السيرفر المحلي

دليل تقني كامل لتثبيت وتشغيل السيرفر المحلي (Local Server)، إعداد الطباعة عبر الشبكة، والعمل دون اتصال بالإنترنت.

Expert

تثبيت السيرفر المحلي

تحميل البرامج المطلوبة وتثبيت المكتبات

قبل البدء، حمّل البرامج التالية:

1

افتح موجّه الأوامر (Command Prompt)

اكتب RUN في شريط البحث، ثم اكتب CMD واضغط Enter.

2

ثبّت المكتبات المطلوبة

داخل نافذة الأوامر السوداء، نفّذ الأوامر التالية بالترتيب:

# تثبيت Bottle py -m pip install bottle # تثبيت مكتبة الاعتماد pymongo py -m pip install pymongo py -m pip install pypiwin32 py -m pip install pillow py -m pip install pythonnet py -m pip install pyserial py -m pip install python-escpos==3.0a9 py -m pip install cryptography py -m pip install requests py -m pip install gevent-websocket

لأجهزة Windows 7: حمّل Python 3.8.9 بدلاً من 3.12، واحذف موديولات cc_pay و scale.

حل المشاكل الشائعة أثناء التثبيت

أخطاء متكررة وطرق إصلاحها

خطأ: module 'clr' has no attribute 'AddReference' — يحدث هذا لأن هناك حزمة باسم clr بينما اسم الحزمة المستعار لـ pythonnet هو أيضاً clr. الحل:

py -m pip uninstall clr

خطأ: DLL مفقودة عند استيراد موديول win32 — يحدث هذا لأن حزمة pywin32 تعتمد على مكتبات Windows C++ غير مثبتة أو غير مسجّلة بشكل صحيح على جهازك.

الحل السريع: ثبّت Visual C++ Redistributable — أحدث إصدار من مايكروسوفت يوفّر المكتبات الأساسية المطلوبة:

https://learn.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist

إعداد ملف POS.BAT

ربط ملف التشغيل بمتصفحك وإنشاء اختصار

1

افتح ملف POS.BAT للتعديل

انقر بزر الفأرة الأيمن على ملف POS.BAT واختر Edit.

تعديل مسار متصفح Chrome في ملف POS.BAT
2

ضع المسار الصحيح للمتصفح

ضع المسار الكامل لمتصفح Google Chrome (أو أي متصفح تستخدمه). لمعرفة المسار الدقيق: اكتب chrome.exe في شريط البحث، ثم افتح موقع الملف (Open file location) وانسخ المسار من الشريط العلوي.

تنبيه: تأكد من تغيير مسار cd ليطابق نفس مكان الملفات على جهازك.

3

أنشئ اختصاراً على سطح المكتب

أنشئ اختصاراً (Shortcut) من ملف POS.BAT وضعه على سطح المكتب لسهولة الوصول لاحقاً.

تفعيل إعدادات العمل دون اتصال

Offline POS Settings و Replicate

1

افتح إعدادات نقطة البيع

من داخل Point of Sale، اذهب إلى POS Profile ثم انزل للأسفل حتى تصل إلى قسم OFFLINE POS SETTINGS.

قسم إعدادات العمل دون اتصال في POS Profile
2

فعّل خيار Replicate

تأكد من تفعيل خيار Replicate. في حقل Replication Host اكتب:

http://IP_ADDRESS:9200

هذا في حال أردت العمل مع السيرفر المحلي مباشرة.

ملاحظة: عليك أيضاً تفعيل chrome://flags غير الآمن (insecure) في كروم لكي يعمل الاتصال بشكل صحيح.

العمل مع أجهزة iOS (iPad / iPhone)

إعداد شهادة SSL موقّعة ذاتياً

أجهزة iOS لا تحتوي على إعداد chrome://flags غير الآمن، لذلك يجب استخدام HTTPS فقط.

1

غيّر Replication Host إلى HTTPS

https://IP_ADDRESS:9200
2

أنشئ شهادة SSL موقّعة ذاتياً

نفّذ الأمر التالي (استبدل IP_ADDRESS بعنوان الـ IP الفعلي لجهازك):

curl -sS https://raw.githubusercontent.com/antelle/generate-ip-cert/master/generate-ip-cert.sh | bash -s IP_ADDRESS

سيقوم هذا الأمر بتوليد ملفَي key.pem و cert.pem.

3

فعّل SSL في local_server.py

أزل التعليق عن أسطر SSL الموجودة في نهاية ملف local_server.py، وعلّق (comment out) السطر الأخير.

4

ثبّت الشهادة على جهاز iOS

أرسل ملف cert.pem إلى جهاز iOS واحفظه في تطبيق Files، ثم افتحه واذهب إلى Settings > Profile Install.

طريقة بديلة: يمكنك استخدام https://local.erpmaxsolution.com:9200 كـ Replication Host إذا أردت العمل مع السيرفر المحلي. أما للعمل مع الاستضافة السحابية (Cloud Host)، استخدم:

/api/method/pos_multi_currency.pos_multi_currency.doctype.pos_order.pos_order.sync

إعداد ملف Hosts وتثبيت الشهادة

ربط النطاق المحلي وتثبيت الشهادة في المتصفح

1

افتح Notepad كمسؤول (Administrator)

اذهب إلى File > Open وانتقل إلى المسار التالي:

Windows\System32\drivers\etc\hosts

تأكد من اختيار All Files بدلاً من Text Documents حتى يظهر ملف hosts.

2

أضف السطر التالي

127.0.0.1 local.erpmaxsolutions.com
3

ثبّت الشهادة

حمّل ملف الشهادة، ثم افتح ملف Server.pem وثبّته ضمن Trusted Root Certificates، وأعد تشغيل Chrome بعد ذلك.

رابط تحميل الشهادة (Google Drive)

إعداد طابعات الشبكة (Socket Printers)

ربط عناوين IP الخاصة بالطابعات وضبط الجدار الناري

1

حدّد عناوين IP للطابعات

من شاشة نقطة البيع، اذهب إلى Menu > Settings وحدّد جميع عناوين IP المطلوبة للطابعات.

إعداد عناوين IP لطابعات الشبكة
إعداد عناوين IP لطابعات الشبكة

مهم: للطباعة عبر الشبكة، تأكد أن الجدار الناري (Firewall) لا يمنع الاتصالات الواردة على المنفذ 9200.

2

افتح المنفذ 9200 في جدار الحماية

Windows Firewall > Advanced Settings > Inbound Rules > New Rule > Port > TCP > Specific Local Ports: 9200 > Allow the connection > أدخل اسماً للقاعدة > Finish، ثم أعد تشغيل الجهاز.

3

اسمح بالمحتوى المختلط (Mixed Content) في Chrome

ضع الرابط التالي في شريط عنوان Chrome:

chrome://flags/#unsafely-treat-insecure-origin-as-secure

فعّله، وأدخل في الحقل عنوان الطابعة (نفس العنوان الذي وضعته في الإعدادات أعلاه)، مثال:

http://192.168.1.150:9200
إعداد المحتوى المختلط في Chrome

تصحيح الأخطاء عن بُعد لأجهزة أندرويد

Remote USB Debug و عرض console logs

1

فعّل خيارات المطورين على الجهاز

اذهب إلى Settings وابحث عن Build Number، ثم انقر عليه 7 مرات لتفعيل Developer Options.

2

فعّل USB Debugging

ارجع إلى Settings وابحث عن Developer Options، ثم فعّل خيار Enable USB Debugging.

3

افتح أدوات المطور في Chrome

على جهاز الكمبيوتر، افتح Chrome واذهب إلى:

chrome://inspect#devices

تأكد من تفعيل خيار Discover USB devices.

شاشة chrome://inspect#devices
4

وصّل الجهاز واعتمد الاتصال

وصّل جهاز أندرويد مباشرة بالكمبيوتر عبر كابل USB. عند أول توصيل، سيظهر الجهاز كـ Offline بانتظار المصادقة — اقبل رسالة تأكيد التصحيح (debugging session) التي تظهر على شاشة جهازك.

تأكيد الاتصال لتصحيح الأخطاء عبر USB
5

افحص سجلات الأخطاء (Console Logs)

عند ظهور اسم موديل جهاز الأندرويد، يكون DevTools قد أنشأ الاتصال بنجاح. انقر عليه ثم انقر Inspect لعرض سجلات الـ console.