कमाई करने से जुड़ी सेवाएं इंस्टॉल करना

Monetization Services, Apigee Edge का एक्सटेंशन है. इसलिए, यह स्टैंडअलोन प्रोसेस के तौर पर काम नहीं करता. यह किसी भी मौजूदा Apigee Edge सेटअप में काम करता है. हालांकि, यह All-In-One (AIO) कॉन्फ़िगरेशन में काम नहीं करता. AIO कॉन्फ़िगरेशन पर, Monetization Services इंस्टॉल नहीं की जा सकती.

Monetization की ज़रूरी शर्तें

  • अगर Monetization को Edge टोपोलॉजी पर इंस्टॉल किया जा रहा है और इसमें एक से ज़्यादा मैनेजमेंट सर्वर नोड इस्तेमाल किए जा रहे हैं, तो Monetization इंस्टॉल करने से पहले, Edge के दोनों मैनेजमेंट सर्वर नोड इंस्टॉल करने होंगे. उदाहरण के लिए, 13 नोड वाला इंस्टॉलेशन.
  • Edge पर Monetization इंस्टॉल करने के लिए, Edge इंस्टॉलेशन में एक से ज़्यादा Postgres नोड होने चाहिए. साथ ही, Postgres नोड को मास्टर/स्टैंडबाय मोड में कॉन्फ़िगर किया जाना चाहिए. अगर आपके पास एक से ज़्यादा Postgres मास्टर नोड हैं, तो Edge पर Monetization इंस्टॉल नहीं किया जा सकता. ज़्यादा जानकारी के लिए, Postgres के लिए मास्टर-स्टैंडबाय रेप्लिकेशन सेट अप करना लेख पढ़ें.
  • Monetization, All-In-One (AIO) कॉन्फ़िगरेशन के साथ उपलब्ध नहीं है.

इंस्टॉल करने के बारे में खास जानकारी

यहां दिए गए चरणों में, Apigee Edge के मौजूदा इंस्टॉलेशन में Monetization Services जोड़ने का तरीका बताया गया है:

  • Apigee Management Server नोड को अपडेट करने के लिए, apigee-setup यूटिलिटी का इस्तेमाल करें. इससे Monetization Services चालू हो जाती हैं. जैसे, कैटलॉग मैनेजमेंट, सीमाएं और सूचनाओं का कॉन्फ़िगरेशन, बिलिंग, और रिपोर्टिंग.

    अगर आपके पास एक से ज़्यादा मैनेजमेंट सर्वर नोड हैं, तो Monetization इंस्टॉल करने से पहले, Edge के दोनों मैनेजमेंट सर्वर नोड इंस्टॉल करने होंगे. उदाहरण के लिए, 13 नोड वाला इंस्टॉलेशन.

  • Apigee Message Processor को अपडेट करने के लिए, apigee-setup यूटिलिटी का इस्तेमाल करें. इससे Monetization Services के रनटाइम कॉम्पोनेंट चालू हो जाते हैं. जैसे, लेन-देन रिकॉर्ड करने की नीति और सीमा लागू करना. अगर आपके पास एक से ज़्यादा Message Processor हैं, तो उन सभी पर Monetization इंस्टॉल करें.
  • Edge के अपने संगठनों के लिए, Monetization को चालू करने की प्रोसेस पूरी करें.
  • Monetization की सुविधा देने के लिए, Apigee Developer Services पोर्टल (या सिर्फ़ पोर्टल) को कॉन्फ़िगर करें. ज़्यादा जानकारी के लिए, डेवलपर पोर्टल में Monetization कॉन्फ़िगर करना लेख पढ़ें.

Monetization के लिए साइलेंट कॉन्फ़िगरेशन फ़ाइल बनाना

यहां, Monetization इंस्टॉल करने के लिए, साइलेंट कॉन्फ़िगरेशन फ़ाइल का एक उदाहरण दिया गया है. अपने कॉन्फ़िगरेशन के हिसाब से, इस फ़ाइल में बदलाव करें. इस फ़ाइल को शामिल करने के लिए, setup.sh में -f विकल्प का इस्तेमाल करें.

# Edge configuration properties
# Specify IP address or DNS name of node.
IP1=192.168.1.1  # Management Server, SymasLDAP, New Edge UI, ZooKeeper, Cassandra
IP2=192.168.1.2  # ZooKeeper, Cassandra
IP3=192.168.1.3  # ZooKeeper, Cassandra
IP4=192.168.1.4  # Router, Message Processor
IP5=192.168.1.5  # Router, Message Processor
IP6=192.168.1.6  # Qpid
IP7=192.168.1.7  # Qpid
IP8=192.168.1.8  # Postgres
IP9=192.168.1.9  # Postgres

# Must resolve to IP address or DNS name of host - not to 127.0.0.1 or localhost.
HOSTIP=$(hostname -i)

# Edge sys admin credentials
ADMIN_EMAIL=your@email.com
APIGEE_ADMINPW=yourPassword    # If omitted, you are prompted for it.

# Specify the Management Server port.
APIGEE_PORT_HTTP_MS=8080

#
# Monetization configuration properties.
#
# Postgres credentials from Edge installation.
PG_USER=apigee    # Default from Edge installation
PG_PWD=postgres    # Default from Edge installation

# Specify Postgres server.
MO_PG_HOST="$IP8"    # Only specify one Postgres node.

# Create a Postgres user for Monetization.
# Default username is "postgre".
# If you specify a different user, that user must already exist.
MO_PG_USER=postgre
MO_PG_PASSWD=moUserPWord

# Specify one ZooKeeper host.
# Ensure this is a ZooKeeper leader node in a multi-datacenter environment.
ZK_HOSTS="$IP2"

# Specify Cassandra information.
# Ensure CASS_HOSTS is set to the same value as when you installed Edge.
# Must use IP addresses for CASS_HOSTS, not DNS names.
CASS_HOSTS="$IP1:1,1 $IP2:1,1 $IP3:1,1"

# Default is "Apigee", unless it was changed during Edge install.
CASS_CLUSTERNAME=Apigee

# Cassandra uname/pword required only if you enabled Cassandra authentication.
# If your password uses special characters, wrap it in single quotes.
# CASS_USERNAME=
# CASS_PASSWORD=

# Specify the region.
# Default is dc-1 unless you are in a multi-datacenter environment.
REGION=dc-1

# If your Edge config file did not specify SMTP information, add it.
# Monetization requires an SMTP server.
SMTPHOST=smtp.gmail.com
SMTPPORT=465
SMTPUSER=your@email.com
SMTPPASSWORD=yourEmailPassword
SMTPSSL=y
SMTPMAILFROM="My Company <myco@company.com>"

ध्यान दें:

  • अगर आपकी Edge कॉन्फ़िगरेशन फ़ाइल में एसएमटीपी की जानकारी नहीं दी गई है, तो उसे जोड़ें. Monetization के लिए, एसएमटीपी सर्वर की ज़रूरत होती है.
  • सिंगल डेटा सेंटर इंस्टॉलेशन में, सभी ZooKeeper नोड डिफ़ॉल्ट रूप से लीडर के तौर पर कॉन्फ़िगर किए जाते हैं. एक से ज़्यादा डेटा सेंटर में Edge इंस्टॉल करने पर, कुछ ZooKeeper नोड कॉन्फ़िगर किए जाएंगे. पक्का करें कि ऊपर दी गई ZK_HOSTS प्रॉपर्टी में, एक से ज़्यादा डेटा सेंटर वाले इंस्टॉलेशन में लीडर नोड की जानकारी दी गई हो.
  • Cassandra की पुष्टि करने की सुविधा चालू करने पर, Cassandra का उपयोगकर्ता नाम और पासवर्ड पास किया जा सकता है. इसके लिए, इन प्रॉपर्टी का इस्तेमाल करें:
    CASS_USERNAME
    CASS_PASSWORD

Monetization Services को सभी मैनेजमेंट सर्वर के साथ इंटिग्रेट करना

मैनेजमेंट सर्वर नोड पर Monetization को इंटिग्रेट करने के लिए, यह तरीका अपनाएं.

  1. अगर Monetization को Edge टोपोलॉजी पर इंस्टॉल किया जा रहा है और इसमें एक से ज़्यादा मैनेजमेंट सर्वर नोड इस्तेमाल किए जा रहे हैं, तो Monetization इंस्टॉल करने से पहले, दोनों मैनेजमेंट सर्वर नोड इंस्टॉल करें. उदाहरण के लिए, 13 नोड वाला इंस्टॉलेशन.
  2. मैनेजमेंट सर्वर नोड पर, सेटअप स्क्रिप्ट चलाएं:
    /opt/apigee/apigee-setup/bin/setup.sh -p mo -f configFile

    -p mo विकल्प से, Monetization को इंटिग्रेट करने की जानकारी मिलती है.

    कॉन्फ़िगरेशन फ़ाइल को "apigee" उपयोगकर्ता ऐक्सेस या पढ़ सकता है.

  3. अगर Monetization को एक से ज़्यादा मैनेजमेंट सर्वर नोड पर इंस्टॉल किया जा रहा है, तो दूसरे मैनेजमेंट सर्वर नोड पर दूसरा चरण दोहराएं.

कॉन्फ़िगरेशन पूरा होने पर, PostgreSQL डेटाबेस में Monetization Services के लिए, RDBMS स्कीमा बनाया जाता है. इससे, Monetization Services और उससे जुड़े कॉम्पोनेंट को Postgres Server के साथ इंटिग्रेट करने की प्रोसेस पूरी हो जाती है.

Monetization Services को सभी Message Processor के साथ इंटिग्रेट करना

सभी Message Processor नोड पर Monetization को इंटिग्रेट करने के लिए, यह तरीका अपनाएं.

  1. पहले Message Processor नोड पर, कमांड प्रॉम्प्ट में सेटअप स्क्रिप्ट चलाएं:
    /opt/apigee/apigee-setup/bin/setup.sh -p mo -f configFile

    -p mo विकल्प से, Monetization को इंटिग्रेट करने की जानकारी मिलती है.

    कॉन्फ़िगरेशन फ़ाइल को "apigee" उपयोगकर्ता ऐक्सेस या पढ़ सकता है.

  2. यह तरीका सभी Message Processor नोड पर दोहराएं.

कॉन्फ़िगरेशन पूरा होने पर, Message Processor को Monetization Services के साथ अपडेट किया जाता है. इससे, Monetization Services और उससे जुड़े कॉम्पोनेंट को Message Processor के साथ इंटिग्रेट करने की प्रोसेस पूरी हो जाती है.

Monetization को चालू करना

नया संगठन बनाने और Monetization की सुविधा चालू करने के लिए:

  1. संगठन को उसी तरह बनाएं जैसे कोई नया संगठन बनाया जाता है. ज़्यादा जानकारी के लिए, किसी संगठन को चालू करना लेख पढ़ें.
  2. Monetization को चालू करने के लिए, Monetization की सुविधा चालू करने वाले एपीआई का इस्तेमाल करें. इसके बारे में, किसी संगठन के लिए Monetization की सुविधा चालू करनालेख में बताया गया है. ऐसा करने के लिए, आपके पास सिस्टम एडमिन के अधिकार होने चाहिए.

अगली बार New Edge यूज़र इंटरफ़ेस (यूआई) में लॉग इन करने पर, आपको संगठन के लिए टॉप-लेवल मेन्यू में Monetization की एंट्री दिखेगी:

Edge के नए यूज़र इंटरफ़ेस में कमाई करने की सुविधा वाला मेन्यू

पोर्टल को Monetization की सुविधा देने के लिए कॉन्फ़िगर करने का तरीका जानने के लिए, डेवलपर पोर्टल में Monetization कॉन्फ़िगर करना लेख पढ़ें.

Monetization इंस्टॉलेशन में मैनेजमेंट सर्वर नोड जोड़ना

अगर Edge के मौजूदा इंस्टॉलेशन में कोई मैनेजमेंट सर्वर जोड़ा जाता है, तो यह पक्का करें कि नए मैनेजमेंट सर्वर में Monetization Services जोड़ी गई हों. साथ ही, सभी मैनेजमेंट सर्वर को इस तरह कॉन्फ़िगर करें कि वे आपस में कम्यूनिकेट कर सकें.

मैनेजमेंट सर्वर जोड़ने के लिए:

  1. नया मैनेजमेंट सर्वर इंस्टॉल करें.
  2. नए मैनेजमेंट सर्वर पर Monetization इंस्टॉल करने के लिए, यह कमांड इस्तेमाल करें:
    /opt/apigee/apigee-setup/bin/setup.sh -p mo -f /opt/silent.conf

अतिरिक्त कॉन्फ़िगरेशन

बिलिंग से जुड़े दस्तावेज़ों को PDF फ़ाइलों के तौर पर उपलब्ध कराना

Monetization, बिलिंग से जुड़े दस्तावेज़ों को असली उपयोगकर्ताओं को एचटीएमएल फ़ॉर्मैट में दिखाता है. बिलिंग से जुड़े दस्तावेज़ों को PDF फ़ाइलों के तौर पर उपलब्ध कराने के लिए, Monetization को किसी ऐसे बिलिंग सिस्टम के साथ इंटिग्रेट किया जा सकता है जो PDF जनरेट करने की सुविधा देता हो. इसके अलावा, तीसरे पक्ष की किसी ऐसी PDF लाइब्रेरी का लाइसेंस लिया जा सकता है जो Monetization के साथ काम करती हो.

संगठन की सेटिंग कॉन्फ़िगर करना

संगठन के एट्रिब्यूट जोड़ने/अपडेट करने के लिए, PUT अनुरोध का इस्तेमाल किया जा सकता है. जैसा कि यहां दिए गए उदाहरण में दिखाया गया है:

curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD \
  -v http://ms_IP:8080/v1/organizations/orgId -d 'org object with attributes' -X PUT

Monetization, संगठन की सेटिंग के साथ जवाब देता है. उदाहरण के लिए:

{
  ...
  "displayName": "Orgnization name",
  "name": "org4",
  "properties": {
    "property": [
      ...
      {
        "name": "MINT_CURRENCY",
        "value": "USD"
      },
      {
        "name": "MINT_COUNTRY",
        "value": "US"
      },
      {
        "name": "MINT_TIMEZONE",
        "value": "GMT"
      }
    ]
  }
}

यहां दी गई टेबल में, संगठन के लेवल के उन एट्रिब्यूट की सूची दी गई है जिनका इस्तेमाल, मिंट संगठन को कॉन्फ़िगर करने के लिए किया जा सकता है.

एट्रिब्यूट ब्यौरा
MINT_TAX_MODEL

स्वीकार की जाने वाली वैल्यू हैं: "DISCLOSED", "UNDISCLOSED", "HYBRID" (डिफ़ॉल्ट वैल्यू, शून्य है)

MINT_CURRENCY

आईएसओ करंसी कोड (डिफ़ॉल्ट वैल्यू, शून्य है)

MINT_TAX_NEXUS

टैक्स नेक्सस (डिफ़ॉल्ट वैल्यू, शून्य है)

MINT_DEFAULT_PROD_TAX_CATEGORY

प्रॉडक्ट की डिफ़ॉल्ट टैक्स कैटगरी (डिफ़ॉल्ट वैल्यू, शून्य है)

MINT_IS_GROUP_ORG

ग्रुप संगठन है (डिफ़ॉल्ट वैल्यू, "false" है)

MINT_HAS_BROKER

ब्रोकर है (डिफ़ॉल्ट वैल्यू, "false" है)

MINT_TIMEZONE

टाइमज़ोन (डिफ़ॉल्ट वैल्यू, शून्य है)

MINT_TAX_ENGINE_EXTERNAL_ID

टैक्स इंजन आईडी (डिफ़ॉल्ट वैल्यू, शून्य है)

MINT_COUNTRY

संगठन किस देश में है (डिफ़ॉल्ट वैल्यू, शून्य है)

MINT_REG_NO

संगठन का रजिस्ट्रेशन नंबर. यूनाइटेड किंगडम में, टैक्स आईडी से अलग नंबर दिया जाता है (डिफ़ॉल्ट वैल्यू, शून्य है)

MINT_BILLING_CYCLE_TYPE

"PRORATED", "CALENDAR_MONTH" (डिफ़ॉल्ट वैल्यू, "CALENDAR_MONTH" है)

MINT_SUPPORTED_BILLING_TYPE

"PREPAID"/"POSTPAID"/"BOTH" (डिफ़ॉल्ट वैल्यू, "PREPAID" है)

MINT_IS_SEPARATE_INV_FOR_FEES

इससे पता चलता है कि फ़ीस के लिए अलग इनवॉइस जनरेट किया जाना चाहिए या नहीं (डिफ़ॉल्ट वैल्यू, "false" है)

MINT_ISSUE_NETTING_STMT

इससे पता चलता है कि नेटिंग स्टेटमेंट जारी किया जाना चाहिए या नहीं (डिफ़ॉल्ट वैल्यू, "false" है)

MINT_NETTING_STMT_PER_CURRENCY

इससे पता चलता है कि हर मुद्रा के लिए नेटिंग स्टेटमेंट जनरेट किया जाना चाहिए या नहीं (डिफ़ॉल्ट वैल्यू, "false" है)

MINT_HAS_SELF_BILLING

इससे पता चलता है कि संगठन के पास सेल्फ़-बिलिंग की सुविधा है या नहीं (डिफ़ॉल्ट वैल्यू, "false" है)

MINT_SELF_BILLING_FOR_ALL_DEV

इससे पता चलता है कि संगठन के पास सभी डेवलपर के लिए सेल्फ़-बिलिंग की सुविधा है या नहीं (डिफ़ॉल्ट वैल्यू, "false" है)

MINT_HAS_SEPARATE_INV_FOR_PROD

इससे पता चलता है कि संगठन के पास हर प्रॉडक्ट के लिए अलग इनवॉइस है या नहीं (डिफ़ॉल्ट वैल्यू, "false" है)

MINT_HAS_BILLING_ADJUSTMENT

इससे पता चलता है कि संगठन, बिलिंग अडजस्टमेंट की सुविधा देता है या नहीं (डिफ़ॉल्ट वैल्यू, "false" है)

features.isMonetizationEnabled

इसका इस्तेमाल, New Edge यूज़र इंटरफ़ेस (यूआई) में Monetization से जुड़ा मेन्यू दिखाने के लिए किया जाता है (डिफ़ॉल्ट वैल्यू, "false" है)

ui.config.isOperator

इसका इस्तेमाल, New Edge यूज़र इंटरफ़ेस (यूआई) में, संगठन के मुकाबले ऑपरेटर के तौर पर सेवा देने वाली कंपनी को दिखाने के लिए किया जाता है (डिफ़ॉल्ट वैल्यू, "true" है)

New Edge यूज़र इंटरफ़ेस (यूआई) का इस्तेमाल करके, कारोबार के संगठन की सेटिंग कॉन्फ़िगर करने के लिए, Monetization का इस्तेमाल करना शुरू करना लेख पढ़ें.

Monetization की सीमाएं

Monetization की सीमाएं लागू करने के लिए, एपीआई प्रॉक्सी में Monetization की सीमाओं की जांच करने वाली नीति जोड़ें. खास तौर पर, यह नीति इन स्थितियों में ट्रिगर होती है:

  • Monetization की सुविधा वाले एपीआई को ऐक्सेस करने वाला डेवलपर, रजिस्टर नहीं है या उसने रेट प्लान की सदस्यता नहीं ली है.
  • डेवलपर ने, सदस्यता वाले रेट प्लान के लिए तय की गई लेन-देन की संख्या से ज़्यादा लेन-देन किए हैं.
  • डेवलपर के ऐडवांस में पैसे चुकाने के विकल्प खाते में बाकी बैलेंस या बाद में पैसे चुकाने के विकल्प क्रेडिट लिमिट पूरी हो गई है.

Monetization की सीमाओं की जांच करने वाली नीति, ऊपर बताई गई स्थितियों में गड़बड़ियां दिखाती है और एपीआई कॉल को ब्लॉक करती है. यह नीति, गड़बड़ी दिखाने वाली नीति का एक्सटेंशन है. साथ ही, दिखाए जाने वाले मैसेज को पसंद के मुताबिक बनाया जा सकता है. लागू होने वाली शर्तें, कारोबार से जुड़े वैरिएबल से ली जाती हैं.

ज़्यादा जानकारी के लिए, एपीआई प्रॉक्सी पर Monetization की सीमाएं लागू करना लेख पढ़ें.