SDK للعميل
قدّم دالتك إلى SDK: RunFeature للصلاحية وRunMeteredFeature للعدادات. يتولى SDK الطلبات والتوقيع والتخزين المؤقت والنبضات.
Go SDK · Java · C · C++ · C# / .NET · Python · JavaScript · Rust · Ruby
Where do initialization arguments come from?
انسخ معرّف المنتج من لوحة التحكم > المنتجات. افتح مفاتيح التوقيع العامة للمنتج نفسه والصق جميع أزواج معرّف المفتاح والمفتاح العام في كود التهيئة بدلاً من YOUR_PRODUCT_ID وYOUR_KEY_ID وYOUR_PUBLIC_KEY. يمكن للتكامل السريع توليد هذا الكود. لا يلزم ملف إعداد للمنتج؛ يتصل SDK افتراضياً بـ https://www.licentivo.com.
هيّئ SDK عند بدء برنامجك أو تنشيطه. اقرأ مفتاح العميل من نافذة التنشيط ومرّر معرّف المنتج والمفاتيح الموثوقة. احتفظ بالعميل حتى إغلاق التطبيق. ضع RunFeature عند العملية الفعلية واستبدل التصدير بوظيفتك.
Install the SDK
ثبّت إصدارًا محددًا داخل مشروع تطبيقك. اختر اللغة أعلاه لعرض تعليمات التثبيت لمنصتها. لا يتطلب تثبيت SDK العام مفتاح API لإدارة المورّد.
الإصدار:
كيفية استخدام SDK بعد التثبيت
| اللغة | تكامل المشروع |
|---|---|
| Go | import licentivo "github.com/spf86/licentivo-sdk" |
| Java | import licentivo.Client; |
| C / C++ | find_package(Licentivo 0.11 REQUIRED) · target_link_libraries(MyApp PRIVATE Licentivo::C) / Licentivo::CPP |
| C# | using Licentivo; |
| Python | from licentivo import Client |
| Node.js | import {Client} from '@licentivo/sdk' |
| Rust | use licentivo::Client; |
| Ruby | require 'licentivo' |
نفّذ العمل المحمي عبر SDK وأغلق client عند الخروج.
Loading code…Connect initialization and feature checks to your software → · Integrate your own software with AI →
كيف أشغّل مثال الإدارة؟
اضبط أولًا متغيرات بيئة خادمك LICENTIVO_URL و LICENTIVO_API_KEY، أدخل عنوان خادم الترخيص ومفتاح الإدارة كاملًا. يقرأ المثال قائمة المنتجات ويعرض حالة HTTP والاستجابة.
يعيد HTTP 200 ويتضمن data.items، نجح الطلب. عند 401 تحقق من اكتمال المفتاح وصلاحيته وعدم إلغائه. إنشاء المفاتيح وصلاحياتها موضحة في مفتاح API للإدارة.
Follow the AI workflow to license your own software →
كيف تعرض حالة الترخيص؟
تقرأ Status وFeatureStatus الحالة محليًا دون طلبات أو انتظار التحقق الخلفي. استخدم إشعارات الحالة لتحديث الواجهة.
| الحالة | المعنى |
|---|---|
active | نجح آخر تحقق عبر الشبكة؛ والترخيص المحلي صالح. |
offline_valid | التوقيع المحلي صالح، ولم ينجح التأكيد عبر الشبكة منذ التشغيل. |
verification_required | لا يوجد توقيع صالح للاستخدام. فعّل الترخيص أو حدّثه عبر الشبكة. |
| expired / revoked / released | رفض الخادم الترخيص صراحةً. أوقف العمليات المحمية. |
quota_exhausted | تجاوز هذا الطلب حصته؛ تبقى الميزات المرخّصة الأخرى متاحة. |
يعني allowed صلاحية الترخيص المحلي؛ والميزات المعدودة ما زالت تطلب وحدات. lease_valid_until نهاية صلاحية الذاكرة الموقّعة لا الترخيص. يوضح code وrequest_id وretryable الخطأ ومرجع السجل وإمكان إعادة المحاولة.
راجع sdk/README.md داخل التنزيل لمعرفة الأساليب وردود الاتصال واستخدام الحزم لكل لغة. تعرض التعليمات أعلاه التثبيت بمدير الحزم حسب اللغة. يوفر الموقع أيضًا حزمًا بإصدارات محددة وأدوات تثبيت موحّدة وتثبيتًا دون اتصال.
أين تضع هذه الاستدعاءات في تطبيقك؟
| مرحلة التطبيق | ما يجب فعله |
|---|---|
| عند البدء أو بعد إدخال المفتاح | استدعِ OpenWithLicense (المنشئ وStart في C++). يُفعّل SDK الترخيص ويبدأ النبضات حسب السياسة. |
| قبل الميزات المدفوعة | مرّر دالتك إلى RunFeature، واستخدم RunMeteredFeature للعدادات |
| أثناء تشغيل التطبيق | أبقِ client نشطًا؛ يرسل SDK النبضات بالفاصل المحدد في السياسة. |
| عند خروج التطبيق | يوقف Close / Dispose / Destroy النبضات ويعيد المقاعد العائمة ويحافظ على تسجيل الأجهزة المرتبطة. |
| عندما يفك المستخدم الربط | استدعِ Deactivate ثم أغلق client. |
تشير الأسماء في الجدول إلى العمليات؛ استخدم الأسماء الدقيقة في مثال لغتك. لتفاصيل النبضات والذاكرة دون اتصال والتحديث عبر الإنترنت، راجع نبضات الاتصال والعمل دون اتصال.