إعداد خطة الأسعار باستخدام سمات مخصّصة

أنت تطّلع على مستندات Apigee Edge.
انتقِل إلى مستندات Apigee X.
info

مقدمة

في بعض الحالات، قد تحتاج إلى أن تستند عدّادات المعاملات إلى متغيّر أو قيمة مخصّصة. على سبيل المثال، قد تحتاج إلى:

  • تحصيل مبلغ متغيّر من المطوّرين استنادًا إلى قيمة مقدَّمة في رسالة طلب واجهة برمجة التطبيقات على سبيل المثال، قد تريد تحصيل رسوم من مطوّري التطبيقات استنادًا إلى عدد البايتات التي يتم نقلها في طلب واجهة برمجة التطبيقات.
  • تجميع طلبات متعددة للحصول على البيانات من واجهة برمجة التطبيقات في معاملة واحدة

باستخدام خطط الأسعار التي تتضمّن سمات مخصّصة، يمكنك تحديد قيمة في رسالة طلب واجهة برمجة التطبيقات التي تعمل كمعدّل، ويتم استخدامها لحساب أعداد المعاملات والرسوم.

تتوفّر خطط الأسعار التالية التي تتضمّن سمات مخصّصة:

  • بطاقة أسعار تتضمّن سمة مخصّصة
  • إشعار قابل للتعديل بسمة مخصّصة

يمكنك ضبط عشر سمات مخصّصة بحدّ أقصى لكل خطة أسعار.

فهم العمليات الحسابية للسمات المخصصة

تعتمد طريقة احتساب قيمة السمة المخصّصة في عدد معاملات خطة الأسعار والرسوم المُحصَّلة على نموذج تحصيل الرسوم، كما هو ملخّص في الجدول التالي.

نموذج الشحن احتساب السمات المخصّصة
السعر الثابت ومجموعات الحجم

custom attribute number * rate = charge to developer

بالنسبة إلى السعر الثابت، يصبح رقم السمة المخصّصة هو عدد المعاملات التي يتم ضربها في السعر. بالنسبة إلى "الحزمة حسب عدد الوحدات"، يتم زيادة عدد المعاملات في مجموعة حسب رقم السمة المخصّصة، ويتم تحصيل رسوم من المطوّر مقابل هذا العدد من المعاملات. على سبيل المثال، إذا كانت قيمة السمة المخصّصة في الرسالة هي 10، يتم تحصيل رسوم من المطوّر مقابل 10 معاملات، ويتم إضافة 10 معاملات إلى عدد النطاقات الحالية. إذا كان لدى المطوّر 6 معاملات فقط متبقّية في النطاق الحالي ، يتم ضرب الرقم 6 في السعر المُطبَّق على هذا النطاق. وتنتقل الأرقام الأربعة المتبقية إلى النطاق التالي ويتم ضربها في معدل تلك النطاق.

في الخطة المستندة إلى عدد الوحدات، إذا كان نطاق عدد الوحدات الأخير يتضمّن حدًا (ليس "غير محدود") و تجاوزت إحدى المعاملات هذا الحد، يحدث أمران:

Bundles

وبما أنّه يتم تحصيل رسوم الحِزم حسب المجموعة وليس حسب المعاملة، يتم إجراء الحسابات التالية:

custom attribute number = amount added to bundle count

على سبيل المثال، إذا كان رقم السمة المخصّصة في الرسالة هو 10، تتم إضافة 10 إلى عدد المعاملات المستخدَمة في الحزمة. إذا كان لدى المطوّر 6 معاملات فقط متبقية في الحزمة الحالية، يتم ملء هذه الحزمة وزيادة عدد الحِزم التالية بمقدار 4. يتم تحصيل سعر الحزمة التالية، إن توفّر، .

إذا كانت الحزمة الأخيرة لها حدّ (وليست "غير محدودة") وتجاوزت معاملة هذا الحدّ، يحدث أمران:

الإشعارات القابلة للضبط

بالنسبة إلى الإشعار القابل للتعديل، يتم إجراء الحساب التالي:

custom attribute number = amount added to transaction count

على سبيل المثال، إذا كان رقم السمة المخصّصة في الرسالة هو 10، تتم إضافة 10 إلى إجمالي عدد المعاملات.

حيث تحصل خطة الأسعار على قيمة السمة المخصّصة

تُحدِّد سياسة تسجيل المعاملات (في حِزمة منتجات واجهة برمجة التطبيقات) مكان البحث في رسالة عن قيمة السمة المخصّصة. يمكنك تحديد السمة المخصّصة في قسم "السمات المخصّصة" ضمن سياسة تسجيل المعاملات لحزمة منتج واجهة برمجة التطبيقات.

بعد ذلك، يمكنك اختيار هذه السمة المخصّصة في خطة الأسعار، وذلك بعد إنشاء حِزمة منتجات لواجهة برمجة التطبيقات تحتوي على سياسة تسجيل المعاملات مع تحديد السمة المخصّصة.

إليك التدفق عالي المستوى:

  1. حدِّد السمات المخصّصة عند إضافة منتج من واجهة برمجة التطبيقات.
  2. أنشئ حزمة منتج في واجهة برمجة تطبيقات تحتوي على المنتج.
    في سياسة تسجيل المعاملات لحزمة منتجات واجهة برمجة التطبيقات، أضِف السمات المخصّصة التي سيتم استخدامها لتحديد خطط الأسعار.
  3. أنشئ خطة أسعار من نوع بطاقة السعر أو إشعار قابل للتعديل لحزمة منتجات واجهة برمجة التطبيقات وحدِّد مَعلمة تقييم مخصّصة.

يوضّح الشكل التالي العلاقة بين السمة المخصّصة المحدّدة في سياسة تسجيل المعاملات وإعدادات خطة بطاقة الأسعار. ينطبق الأمر نفسه على الإشعار القابل للتعديل مع علاقة خطة الأسعار للسمة المخصّصة، إلا أنّ القيمة المستندة إلى حجم المحتوى غير قابلة للتطبيق.

كيفية إنشاء قيمة السمة المخصّصة في الرسالة

يمكن أن تبحث سياسة تسجيل المعاملات عن قيمة السمة المخصّصة في عدة مواضع، مثل عنوان الاستجابة أو نص الاستجابة أو متغيّرات المسار المحدّدة مسبقًا في الاستجابة. (لا يتوفّر الطلب لأنّ المعاملة لا تكون رسمية إلى أن تتلقّى استجابة ناجحة ). في ما يلي أمثلة توضّح لك كيفية إضافة عنوان ردّ مع قيمته الرقمية إلى الرسالة. في كلتا الحالتَين، سنستخدم سياسة تعيين الرسائل مع المتغيّرات.

إضافة حجم حمولة الطلب إلى عنوان الاستجابة

في كل طلب رسالة، يتوفّر متغيّر client.received.content.length يحتوي على عدد البايتات في حمولة الطلب. من خلال إرفاق سياسة تعيين الرسائل بحالة استجابة نقطة النهاية الوكيلة، يمكننا إنشاء عنوان استجابة يُسمى messageSize يحتوي على قيمة الطول:

<AssignMessage async="false" continueOnError="false" enabled="true" name="Assign-Message-1">
    <DisplayName>Assign Message 1</DisplayName>
    <Set>
        <Headers>
          <Header name="messageSize">{client.received.content.length}</Header> 
        </Headers>  
    </Set>
    <IgnoreUnresolvedVariables>true</IgnoreUnresolvedVariables>
    <AssignTo createNew="false" transport="http" type="request"/>
</AssignMessage>

إضافة قيمة سمة مخصّصة للتطبيق إلى العنوان

بالطريقة نفسها، يمكننا إنشاء عنوان يتضمّن قيمة سمة مخصّصة في أحد التطبيقات. على سبيل المثال، إذا أدرجت سمة مخصّصة باسم apprating في كل تطبيق للمطوّر، على النحو التالي:

عند استخدام سياسة "التحقّق من مفتاح واجهة برمجة التطبيقات" (التي تكون مطلوبة لتحقيق الربح)، يتم تخزين هذه القيمة في متغيّر يُسمى verifyapikey.{policy_name}.apprating. باستخدام سياسة تحديد الرسائل المرفقة باستجابة نقطة نهاية الخادم الوكيل، يمكنك إنشاء عنوان باسم apprating يحتوي على قيمة apprating للتطبيق:

<AssignMessage async="false" continueOnError="false" enabled="true" name="Assign-Message-1">
    <DisplayName>Assign Message 1</DisplayName>
    <Set>
        <Headers>
          <Header name="apprating">{verifyapikey.Verify-API-Key-1.apprating}</Header> 
        </Headers>  
    </Set>
    <IgnoreUnresolvedVariables>true</IgnoreUnresolvedVariables>
    <AssignTo createNew="false" transport="http" type="request"/>
</AssignMessage>

إعداد خطة الأسعار

باستثناء إعداد السمة المخصّصة الموضّح أعلاه، يتم إعداد خطة الأسعار بالطريقة نفسها التي تتّبعها عادةً (لخطط الأسعار التي لا تتضمّن سمات مخصّصة)، ولكن يجب الالتزام بالمتطلبات التالية.

ضبط خطة بطاقة الأسعار باستخدام سمة مخصّصة باستخدام واجهة المستخدم

اضبط خطط بطاقة الأسعار بسمات مخصّصة باستخدام واجهة مستخدم Edge أو واجهة مستخدم Edge Classic، كما هو موضَّح في الأقسام التالية.

Edge

لضبط خطة بطاقة الأسعار باستخدام سمات مخصّصة باستخدام واجهة مستخدم Edge:

  1. حدِّد السمات المخصّصة عند إضافة منتج من واجهة برمجة التطبيقات.
  2. أنشئ حِزمة منتجات في واجهة برمجة التطبيقات تحتوي على المنتج. راجِع مقالة إنشاء حزم منتجات لواجهة برمجة التطبيقات.
    في سياسة تسجيل المعاملات لحزمة منتجات واجهة برمجة التطبيقات، أضِف السمات المخصّصة التي سيتم استخدامها لتحديد خطط الأسعار. لمعرفة التفاصيل، اطّلِع على المقدمة في هذا الموضوع، بالإضافة إلى إنشاء سياسة تسجيل المعاملات.
  3. أنشئ خطة أسعار لحزمة منتجات واجهة برمجة التطبيقات وحدِّد مَعلمة تقييم مخصّصة.

لمزيد من المعلومات، يُرجى الاطّلاع على ضبط تفاصيل خطة الأسعار باستخدام واجهة المستخدم.

الإصدار الكلاسيكي Edge (السحابة الإلكترونية الخاصة)

يُرجى اتّباع الخطوات التالية لإنشاء "بطاقة سعر" مع خطة "السمات المخصّصة" باستخدام واجهة مستخدم Classic Edge:

  1. في سياسة تسجيل المعاملات لأحد منتجات واجهة برمجة التطبيقات، أضِف السمات المخصّصة التي سيتم استخدامها لتحديد خطط الأسعار. لمعرفة التفاصيل، يمكنك الاطّلاع على المقدّمة في هذا الموضوع، بالإضافة إلى إنشاء سياسة تسجيل المعاملات. يمكنك إجراء ذلك لكل منتج من منتجات واجهة برمجة التطبيقات التي تريد تضمينها في حزمة واجهة برمجة التطبيقات.
  2. بعد ضبط منتجات واجهة برمجة التطبيقات وسياسات تسجيل المعاملات بالطريقة التي تريدها بالضبط، أنشئ حزمة واجهة برمجة التطبيقات التي تحتوي على المنتج. يُرجى الاطّلاع على إنشاء حِزم واجهة برمجة التطبيقات.
  3. أنشئ خطة تعرفات لحزمة واجهة برمجة التطبيقات، مع اختيار نوع خطة تعرفات بطاقة تعرفات مع سمة مخصّصة.
  4. انقر على الرابط بطاقة السعر. يؤدي هذا إلى فتح نافذة "بطاقة السعر".

  5. اختَر سمة مخصّصة من القائمة المنسدلة "السمة المخصّصة". تعرض القائمة السمات المخصّصة التي تم إنشاؤها للمنتج في سياسة تسجيل المعاملات. يتم تحصيل الرسوم من المطوّر بناءً على قيمة السمة المخصّصة المحدّدة في كل معاملة.
    (قيمة السمة * السعر = الرسوم المُحصَّلة من المطوّر)
  6. يمكنك اختياريًا إعداد خطة مجانية جزئيًا على النحو الموضّح في تحديد تفاصيل خطة تعرفة الإقامة.
  7. يمكنك إعداد نموذج شحن كما هو موضّح في تحديد تفاصيل خطة بطاقة الأسعار. يُرجى العلم أنّه بالنسبة إلى نوع خطة الأسعار "بطاقة الأسعار مع السمة المخصّصة"، يستند النموذج المُستخدَم في تحصيل الرسوم إلى السمة المخصّصة التي تختارها. على سبيل المثال، إذا اخترت "سعر ثابت" كنموذج تحصيل الرسوم، يتم تحصيل سعر ثابت من المطوّر استنادًا إلى السمة المخصّصة، مثل عدد البايتات المُرسَلة في كل معاملة (وليس سعرًا ثابتًا لكل معاملة). راجع العمليات الحسابية لمعرفة المزيد.
  8. انقر على حفظ مسودة.
    لا تنشر الخطة إلا عندما تكون متأكدًا تمامًا من أنّها نهائية. راجِع مقالة نشر خطط أسعار المحتوى للحصول على معلومات عن ضبط تاريخ النشر ونشر الخطة.

لمزيد من المعلومات، يُرجى الاطّلاع على تحديد تفاصيل خطة الأسعار باستخدام واجهة المستخدم.

ضبط خطة إشعارات قابلة للتعديل باستخدام سمات مخصّصة من خلال واجهة المستخدم

يمكنك ضبط خطط الإشعارات القابلة للتعديل باستخدام السمات المخصّصة، كما هو موضّح أدناه.

Edge

لضبط خطة بطاقة الأسعار باستخدام سمات مخصّصة باستخدام واجهة مستخدم Edge:

  1. حدِّد السمات المخصّصة عند إضافة منتج من واجهة برمجة التطبيقات.
  2. أنشئ حزمة منتج في واجهة برمجة تطبيقات تحتوي على المنتج. راجِع مقالة إنشاء حزم منتجات لواجهة برمجة التطبيقات.
    في سياسة تسجيل المعاملات لحزمة منتجات واجهة برمجة التطبيقات، أضِف السمات المخصّصة التي سيتم استخدامها لتحديد خطط الأسعار. لمعرفة التفاصيل، اطّلِع على المقدمة في هذا الموضوع، بالإضافة إلى إنشاء سياسة تسجيل المعاملات.
  3. أنشئ خطة أسعار لحزمة منتجات واجهة برمجة التطبيقات وحدِّد مَعلمة تقييم مخصّصة.

لمزيد من المعلومات، يُرجى الاطّلاع على ضبط خطة إشعارات قابلة للتعديل باستخدام واجهة المستخدم.

Classic Edge (سحابة خاصة)

لضبط خطة بطاقة الأسعار باستخدام سمات مخصّصة باستخدام واجهة مستخدم Classic Edge:

  1. في سياسة تسجيل المعاملات الخاصة بمنتج واجهة برمجة التطبيقات، أضِف السمات المخصّصة التي سيتم استخدامها لتحديد خطط الأسعار. لمعرفة التفاصيل، اطّلِع على المقدمة في هذا الموضوع، بالإضافة إلى إنشاء سياسة تسجيل المعاملات. يمكنك إجراء ذلك لكل منتج من منتجات واجهة برمجة التطبيقات التي تريد تضمينها في حزمة واجهة برمجة التطبيقات.
  2. بعد ضبط منتجات واجهة برمجة التطبيقات وسياسات تسجيل المعاملات بالطريقة التي تريدها بالضبط، أنشئ حزمة واجهة برمجة التطبيقات التي تحتوي على المنتج. اطّلِع على إنشاء حِزم واجهة برمجة التطبيقات.
  3. أنشِئ خطة أسعار لحزمة واجهة برمجة التطبيقات، واختَر نوع خطة الأسعار للإشعار القابل للتعديل باستخدام السمة المخصّصة.
  4. انقر على الرابط التفاصيل. سيؤدي ذلك إلى فتح نافذة "الإشعار القابل للتعديل" .

  5. اختَر سمة مخصّصة من القائمة المنسدلة السمة المخصّصة. تسرد القائمة السمات المخصّصة التي تم إنشاؤها للمنتج في سياسة تسجيل المعاملات. يتم احتساب إجمالي عدد معاملات المطوّر استنادًا إلى قيمة السمة المخصّصة التي تم اختيارها في كل معاملة.
  6. اضبط أساس التجميع على الفترة الزمنية التي يتم خلالها تجميع حجم المعاملات. اختَر رقمًا بين 1 و24 شهرًا. القيمة التلقائية لهذه السمة هي 1 شهر.
  7. انقر على تطبيق وإغلاق.
  8. انقر على حفظ مسودة.
    يجب نشر الخطة فقط عندما تكون متأكّدًا من أنّها نهائية. راجِع خطط أسعار النشر للحصول على معلومات حول ضبط تاريخ النشر ونشر الخطة.

لمزيد من المعلومات، يمكنك الاطّلاع على تحديد تفاصيل خطة إشعارات قابلة للتعديل باستخدام واجهة المستخدم.

تحديد تفاصيل خطة أسعار باستخدام سمات مخصّصة من خلال واجهة برمجة التطبيقات

نفِّذ الخطوات الأساسية التالية:

  1. في سياسة تسجيل المعاملات الخاصة بمنتج واجهة برمجة التطبيقات، أضِف السمات المخصّصة التي سيتم استخدامها لتحديد خطط الأسعار. لمعرفة التفاصيل، اطّلِع على المقدمة في هذا الموضوع، بالإضافة إلى إنشاء سياسة تسجيل المعاملات. نفِّذ هذا الإجراء لكل منتج واجهة برمجة تطبيقات تريد تضمينه في حزمة واجهة برمجة التطبيقات.
  2. بعد ضبط منتجات واجهة برمجة التطبيقات وسياسات تسجيل المعاملات بالطريقة التي تريدها بالضبط، أنشئ حزمة واجهة برمجة التطبيقات التي تحتوي على المنتج. يُرجى الاطّلاع على إنشاء حِزم واجهة برمجة التطبيقات.

بعد ذلك، يمكنك استخدام واجهة برمجة التطبيقات لإنشاء خطة الأسعار.

يمكنك تحديد تفاصيل خطة أسعار باستخدام السمات المخصّصة عند إنشاء خطة الأسعار. يمكنك تحديد التفاصيل في سمة ratePlanDetails ضمن نص الطلب في مكالمة /organizations/{org_name}/monetization-packages/{package_id}/rate-plans. ويمكنك في التفاصيل تحديد قيمة مَعلمة rating التي تحدد اسم السمة المخصّصة. يمكنك أيضًا تحديد قيمة مَعلمة تقييم تُجمِّع السمة المخصّصة على مدار فاصل زمني محدّد.

يُرجى الاطّلاع على إعدادات ضبط تفاصيل خطة الأسعار للحصول على قائمة كاملة بخيارات تفاصيل خطة الأسعار.

على سبيل المثال، يؤدي الإجراء التالي إلى إنشاء بطاقة أسعار بخطة سمة مخصّصة استنادًا إلى سمة مخصّصة باسم messageSize (اطّلِع على العناصر المكتوبة بخط عريض).

$ curl -H "Content-Type:application/json" -X POST -d \
'{
   "name": "Custom attribute-based rate card plan",
   "developer":null,
   "developerCategory":null,
   "currency": {
     "id" : "usd"
     },     
   "description": "Custom attribute-based rate card plan",
   "displayName" : "Custom attribute-based rate card plan",
   "frequencyDuration": "1",
   "frequencyDurationType": "MONTH",
   "earlyTerminationFee": "10",
   "monetizationPackage": {
      "id": "location"
        },
      "organization": {
       "id": "{org_name}"
      },    
   "paymentDueDays": "30",
   "prorate": "false",
   "published": "false",     
   "ratePlanDetails":[
      {
        "currency":{
           "id":"usd"
        },
      "duration":1,
      "durationType":"MONTH",
      "meteringType":"VOLUME",
      "paymentDueDays":"30",
      "ratingParameter":"messageSize",
      "ratingParameterUnit":"MB",
      "organization":{
         "id":"{org_name}"
      },
      "ratePlanRates":[
         {
           "rate":0.15,
           "startUnit":0,
           "type":"RATECARD",
           "endUnit":1000
         },
         {
           "rate":0.1,
           "startUnit":1000,
           "type":"RATECARD",
           "endUnit":null
         }
      ],
      "freemiumUnit":0,
      "freemiumDuration":0,
      "freemiumDurationType":"MONTH",
      "type":"RATECARD",
      "customPaymentTerm":false
      }
    ],
    "freemiumUnit":0,
    "freemiumDuration":0,
    "freemiumDurationType":"MONTH",
    "contractDuration":"1",
    "contractDurationType":"YEAR", 
    "recurringStartUnit": 1,
    "recurringType": "CALENDAR",
    "recurringFee": "10",
    "setUpFee": "10",
    "startDate": "2013-09-15 00:00:00",
    "type": "STANDARD"
}' \
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages/location/rate-plans" \
-u email:password

يؤدي ما يلي إلى إنشاء إشعار قابل للتعديل مع خطة تعرفة للسمة المخصّصة استنادًا إلى سمة مخصّصة باسم messageSize (اطّلِع على العنصر المكتوب بخط عريض).

$ curl -H "Content-Type:application/json" -X POST -d \
'{
     "name": "AdjustableNotification",
     "displayName": "Custom attribute-based adjustable notification plan",
     "description": "Custom attribute-based adjustable notification plan",
     "published": "true",  
     "organization": {
      "id": "myorg"
     },
     "startDate": "2016-04-15 00:00:00",
     "type": "STANDARD",
     "monetizationPackage": {
        "id": "p1",
        "name": "test"
     },
     "currency": {
        "id" : "usd",
        "name" : "USD"
     },
     "ratePlanDetails": [
        {
           "type": "USAGE_TARGET",
           "meteringType": "DEV_SPECIFIC",
           "duration": 1,
           "durationType": "MONTH",
           "ratingParameter": "messageSize",
           "ratingParameterUnit": "MB",
           "organization": {
             "id": "myorg"
           },
           "currency": {
             "id": "usd",
             "name": "USD"
           }
        }
     ]
}' \
"https://api.enterprise.apigee.com/v1/mint/organizations/myorg/monetization-packages/p1/rate-plans"  \
-u email:password