تخطَّ إلى المحتوى

نظرة عامة على المطورين

تم بناء PrimoCRM ليكون قابلاً للتوسيع. يوثق هذا القسم الخطافات العامة، وواجهة برمجة تطبيقات REST، والسجلات التي تستخدمها لإضافة وظائف دون تعديل النواة.

نظرة سريعة على الهندسة المعمارية

Section titled “نظرة سريعة على الهندسة المعمارية”
  • واجهة المشرف: تطبيق صفحة واحدة بـ React يتواصل مع وحدات تحكم PHP REST. توجد صفحة إدارة واحدة ذات توجيه من جهة العميل.
  • وحدات تحكم REST: تسجل كل وحدة مساراتها ضمن مساحة الاسم primocrm/v1 على rest_api_init. انظر واجهة برمجة تطبيقات REST.
  • محرك الخلفية: تعمل جميع المهام طويلة الأجل (إرسال الحملات، وتتابع الرسائل، وخطوات الأتمتة، والعمليات المستوردة) من خلال عمال كرون (cron workers) يعيدون جدولة أنفسهم وذوي ميزانية زمنية، وليس أبداً في طلب الصفحة. عندما تضيف أي شيء يتصل بواجهة برمجة تطبيقات خارجية أو يعالج صفوفاً عديدة، فاتبع نفس نمط قائمة الانتظار بدلاً من إجراء حظر.
  • السجلات والمرشحات: يتم جمع المشغلات، والإجراءات، وحقول النماذج، ومصادر الترحيل، ومرسلي البريد الإلكتروني من خلال مرشحات ووردبريس، لذا تسجل الإضافات نفسها فيها بدون أي تعديلات على النواة. انظر توسيع PrimoCRM.

الإصدار المجاني والاحترافي

Section titled “الإصدار المجاني والاحترافي”

يأتي PrimoCRM في هيئة إضافتين. الإلضافة المجانية هي نظام إدارة العملاء (CRM) كاملاً وتعمل بشكل مستقل. تحدد الإضافة الاحترافية (Pro) ثابتاً يفتح الميزات المدفوعة ويسجل مشغلات وإجراءات ومرسلات إضافية من خلال نفس المرشحات العامة التي سيستخدمها كود الخاص بك.

لأن النسخة الاحترافية تستخدم نقاط التوسيع العامة، فإن الأنماط الواردة في هذا القسم هي تماماً الطريقة التي تُبنى بها ميزات النسخة الاحترافية الرسمية. إذا كان بإمكان النسخة الاحترافية إضافة مشغل لـ WooCommerce عبر primocrm_automation_triggers، فيمكنك أنت ذلك أيضاً.

نموذج البيانات، باختصار

Section titled “نموذج البيانات، باختصار”
  • جهات الاتصال تحمل حقولاً قياسية بالإضافة إلى حقول مخصصة مخزنة كبيانات وصفية لجهة الاتصال، وحالة تتحكم في إمكانية إرسال البريد إليها.
  • القوائم والعلامات تجمّع جهات الاتصال من خلال جداول محورية.
  • الحملات، والتتابعات، والأتمتة تمتلك كل منها جداولها الخاصة ويتم تشغيلها بواسطة محرك الخلفية.

قيم الحقول المخصصة قابلة للقراءة في رسائل البريد الإلكتروني كـ {{contact.meta.KEY}} وقابلة للكتابة بواسطة الأتمتة، وهذا هو موضع الوصل الذي يستخدمه إجراء الذكاء الاصطناعي في النسخة الاحترافية. انظر التخصيص والرموز الذكية.

  • مساحة الأسماء: قم بوضع بادئة لخطافاتك، وخياراتك، ومفاتيحك حتى لا تتداخل. يستخدم PrimoCRM البادئة primocrm_ لخطافات PHP و primocrm/v1 لـ REST.
  • القدرات: تتحقق نقاط نهاية REST من القدرة في رد الاتصال الخاص بالصلاحيات الخاص بها. احترم نفس النموذج في أي شيء تضيفه.
  • الفشل المغلق: أي شيء ليس في القائمة البيضاء للإصدار المجاني يتم التعامل معه على أنه نسخة احترافية (Pro). إذا قمت بتسجيل مشغل أو إجراء جديد، فحدد عن قصد ما إذا كان يجب أن يكون مجانياً عن طريق تصفية primocrm_free_triggers أو primocrm_free_actions.