اهلا بك كيف حالكلغه python هتستعل dockerالبوت هو استضافه ملفات python و يدعم تشغيل php ايضاسيكون نظام سيرفرات افتراضيه يعني كل مستخدم ليه سيرفر هفهمك اكتراسم مجلد التخزينdataهيكون فيه ملف اسمه users.هيتحط فيه معرف المستخدم و id المستخدم ووقت دخولهوهيقدر المستخدم يصنع سيرفرمن خلال زر صنع سيرفراهلا بك يا ( اسم المستخدم هنا ) للبدأ قم بالضغط علي زر انشاء سيرفر وزر تسجيل دخولهو 1- هيكل الملفاتهيكون في مجلد اسمه server هيحتوي علي كل السيرفرات المنشأهالسيرفر مجلده هيكون كداserver_(هنا هيكون id السيرفر وهقولك بيجي ازاي)_(هنا هيكون id المستخدم للي عمل السيرفر) المجلد بتاع السيرفر هقولك هيحتوي علي ايconfig.run.shrestart.userملف config.json دا هيكون فيه عملومات السيرفرماشيمساره ووقت انشاءه ومعلوماته و id بتاعه وغيرهملف run.sh و ملف restart.shمجلد للي اسمه user دا هيكون من جوا كدهupload_(id server here) 2- صنع الحاويههيتم انشاء حاويه داخل ملف السيرفرلازم الحاويه يكون مثبت فيها php و python دا هيكون ك معرف ل السيرفر هيكون مثلا6643469 رقم عشوائي يعنيبعد م السيرفر يتعمل والحاويه تتعمل يقول كداتم انشاء السيرفر الخاص بك تم انشاء مجلدات السيرفر بنجاح « ️ معلومات هامه️ » معرف السيرفر [ ID ] : (يكتب هنا معرف السيرفر) مساحه السيرفر : ( يكتب هنا مساحه الحاويه خليه يكتب المساحه الفعليه عشان نعرف + خلي المساحه تكون 3 جيجا لكل سيرفر) بعدها لما ادوس ابدأ الاقي رساله دياهلا بك في اقوي بوت استضافه ️معرف السيرفر [ ID ] : ( يكتب هنا معرف الخاص ب سيرفري)اكتب /dashboardبس لما اكتب داش بورد يطلعليي كدالوحه تحكم خاصه بـ سيرفرك ( id هنا )هنا بقا يكون في ازرار inline kepordوطبعا خليها كلها شغاله كويسزي زر رفع ملفوزر عرض ملفاتي ودا يعرض ملفاتي inline وزر الملفات التي تعمل مع التركيز على كيفية عملها كأزرار inline keyboard،1. زر "رفع ملف"الوصف العام:زر يتيح للمستخدم رفع ملف من جهازه إلى السيرفر الخاص به.عند الضغط على الزر،يقوم البوت بإرسال رسالة تطلب من المستخدم اختيار الملف الذي يرغب برفعه، يُخزن الملف في مجلد upload_{server_id} داخل السيرفر الخاص بالمستخدم ويتم تحديث قاعدة البيانات أو الملف config.json لإدراج تفاصيل الملف (مثل اسم الملف، الحجم،أزرار inline keyboard الخاصة به:يُمكن تزويد الرسالة اللاحقة بخيارات إضافية مثل "الغاء" في حال رغب المستخدم في إيقاف العملية.2. زر "عرض ملفاتي"الوصف العام:عند الضغط على الزر، يُرسل callback يحمل البيانات "show_files" من inline keyboard. ويعرضها بشكل منظم (يمكن أن يكون ذلك على هيئة قائمة نصية مفصلة تشمل اسم الملف، يمكن تضمين أزرار inline إضافية لتفاصيل الملف،زر "تنزيل" (callback: "download_{file_id}")زر "حذف" (callback: "delete_{file_id}")زر "معاينة" (callback: "preview_{file_id}")أزرار inline keyboard الخاصة به:النص: "عرض ملفاتي"3. زر "إحصائيات" مما يساعده في مراقبة حالة النظام.آلية العمل بالتفصيل: يُرسل callback يحمل البيانات "server_stats" أو "stats".يقوم البوت بجمع البيانات اللازمة من الحاوية،نسبة استخدام المعالج (CPU usage)استهلاك الذاكرة (RAM usage)المساحة التخزينية المستخدمة مقابل الكلية (من أصل 3 جيجا)عدد العمليات أو السكربتات الجاريةتُعرض البيانات بشكل بصري واضح، سواء عبر تنسيق جدولي أو حتى رسوم بيانية مبسطة في الرسالة.أزرار inline keyboard الخاصة به:النص: "إحصائيات"callback_data: "server_stats"4. زر "تشغيل ملف"الوصف العام:زر مخصص لتنفيذ ملف محدد من بين الملفات الموجودة في السيرفر.آلية العمل بالتفصيل:عند الضغط على الزر، يُرسل callback يحتوي على "run_file".يستجيب البوت بعرض قائمة بالملفات القابلة للتنفيذ (قد تكون ملفات Python أو PHP) باستخدام inline keyboard لكل ملف في القائمة مع زر يُظهر اسم الملف.بعد اختيار الملف، يقوم البوت بتنفيذ أمر تشغيل الملف داخل الحاوية (باستخدام السكربت run.sh)، ويعرض للمستخدم مخرجات التنفيذ أو أي رسالة خطأ محتملة.أزرار inline keyboard الخاصة به:النص: "تشغيل ملف"callback_data: "run_file"ملاحظة: قد تُعرض قائمة الملفات مع أزرار فرعية لكل ملف تحمل callback مثل "run_{file_id}" لتحديد الملف المطلوب.5. زر "الملفات التي تعمل"الوصف العام:زر يعرض قائمة بكل الملفات أو العمليات التي تعمل حاليًا داخل الحاوية الخاصة بالسيرفر.عند الضغط عليه،يقوم البوت بجلب تفاصيل العمليات الجارية، والتي قد تشمل: اسم الملف أو السكربت قيد التشغيلوقت بدء التشغيلاستهلاك الموارد لكل عملية مع إمكانية النقر على كل عملية لمزيد من التفاصيل أو لإجراء عمليات إضافية مثل إعادة التشغيل.أزرار inline keyboard الخاصة به:النص: "الملفات التي تعمل"6. زر "إيقاف ملف"الوصف العام:زر يسمح للمستخدم بإنهاء أو إيقاف عملية تشغيل ملف معين تعمل حاليًا داخل السيرفر.آلية العمل بالتفصيل: يُرسل callback يحمل البيانات "stop_file".يقوم البوت بعرض قائمة بالعمليات الجارية (كما في زر "الملفات التي تعمل") بحيث يتمكن المستخدم من اختيار العملية التي يرغب بإيقافها.بعد اختيار العملية المناسبة (مثلاً عبر زر inline لكل عملية يحمل callback مثل "stop_{process_id}")، يقوم البوت بإرسال الأمر المناسب داخل الحاوية لإيقاف تلك العملية بأمان (باستخدام السكربت restart.أزرار inline keyboard الخاصة به:النص: "إيقاف ملف"callback_data: "stop_file"ملاحظة: يمكن أن تكون العملية على مرحلتين؛ أولاً عرض قائمة العمليات، ثم اختيار العملية المراد إيقافها عبر زر inline يحمل callback فريد لكل عملية.تنظيم الأزرار:تُجمع كل هذه الأزرار في رسالة واحدة تحتوي على inline keyboard متكامل، بحيث يكون ترتيبها منظمًا ليسهل على المستخدم التنقل بين الخيارات المختلفة.مثال على تنظيم inline keyboard: [ { "text": "رفع ملف", { "text": "عرض ملفاتي", [ { "text": "إحصائيات", "callback_data": "server_stats" } ], "callback_data": "run_file" }, "callback_data": "stop_file" } ],