متطلبات cBots
هناك متطلبان رئيسيان يجب عليك تلبيتهما لضمان تشغيل مثيلات cBot الخاصة بك بسلاسة في السحابة: مراجع وقت التجميع والتبعيات عبر المنصات.
مراجع وقت التجميع
هناك طرق متعددة للعمل مع التبعيات في .NET. على سبيل المثال، قد تقدم التبعيات كملفات .dll فردية دون تضمينها مباشرة في ملف التنفيذ الخاص بمشروعك.
ومع ذلك، فإن مراجع وقت التجميع فقط هي المتوافقة تمامًا مع تشغيل cBots في السحابة. تعمل السحابة كبيئة مخصصة تقوم بتشغيل ملف cBot التنفيذي (ملف .algo) دون إدارة أي ملفات .dll خارجية.
يتم ضمان تبعيات وقت التجميع في جميع الحالات التي تشير فيها إلى مكتبة في بيانات using في أعلى الكود الخاص بك. ومع ذلك، إذا أشرت إلى ملف .dll مستقل داخل نص الكود الخاص بك (على سبيل المثال، عبر طريقة Assembly.Load()), فلن تكون هذه الإشارة في وقت التجميع، ولن يقوم cBot الخاص بك بتنفيذ أي عمليات ذات صلة في السحابة.
التبعيات عبر المنصات
تنفذ السحابة جميع cBots في بيئة تعتمد على Linux. هذا يعني أنه إذا كنت ترغب في استخدام تبعيات خارجية، يجب أن تكون هذه التبعيات عبر المنصات.
كتوضيح، إليك بعض التبعيات التي لن تعمل في السحابة لأنها خاصة بنظام Windows.
- WPF
- WinForms
- WinAPI
عند إضافة تبعية جديدة إلى مشروعك، اقرأ وثائقها لمعرفة ما إذا كانت مدعومة في البيئات المعتمدة على Linux.
ميزات API
هناك العديد من ميزات Algo API التي تعمل بشكل مختلف في السحابة مقارنة بالتنفيذ المحلي.
| الميزة/الطريقة | كيف تعمل في السحابة |
|---|---|
MessageBox | تعيد دائمًا MessageBoxResult.None |
Window | يتم تجاهلها دائمًا |
Notifications.PlaySound() | يتم تجاهلها دائمًا |
Account.UserNickName | تستدعي دائمًا معالج OnException() |
Chart.TakeChartshot() | تعيد دائمًا قيمة فارغة |
WebSocketClient | تعمل فقط إذا اتصلت بخدمة عبر المنفذ 25345 |
HTTP | لا يتم إرسال طلبات HTTP |
LocalStorage وعمليات الملفات | تعمل فقط إذا تم تحديد مسارات نسبية أو إنشاء مجلدات جديدة من الصفر |
التخزين المحلي وعمليات الملفات
كلما تم إيقاف مثيل السحابة أو حذفه، يتم تحرير جميع الموارد المخصصة له داخل السحابة تلقائيًا. إذا قام cBot الخاص بك بإنشاء ملفات أو مجلدات ثم الوصول إلى البيانات منها، فسيتم حذف هذه الملفات في كل مرة يتم فيها إعادة تشغيل المثيل أو حذفه.
