মনিটাইজেশন পরিষেবা হল Apigee Edge-এর একটি এক্সটেনশন, তাই এটি স্বতন্ত্র প্রসেস হিসেবে রান করে না। এটি আগে থেকে থাকা যেকোনও Apigee Edge সেট-আপের মধ্যে চলে, তবে অল-ইন-ওয়ান (AIO) কনফিগারেশন এর ব্যতিক্রম। আপনি AIO কনফিগারেশনে মনিটাইজেশন পরিষেবা ইনস্টল করতে পারবেন না।
মনিটাইজেশন সংক্রান্ত প্রয়োজনীয়তা
- আপনি যদি এমন Edge টপোলজিতে মনিটাইজেশন ইনস্টল করেন যা একাধিক ম্যানেজমেন্ট সার্ভার নোড ব্যবহার করে, যেমন ১৩-নোড ইনস্টলেশন, তাহলে আপনাকে মনিটাইজেশন ইনস্টল করার আগে অবশ্যই Edge ম্যানেজমেন্ট সার্ভার নোড ইনস্টল করতে হবে।
- Edge-এ মনিটাইজেশন ইনস্টল করতে যেখানে Edge ইনস্টলেশনে একাধিক Postgres নোড আছে, Postgres নোডগুলিকে অবশ্যই মাস্টার/স্ট্যান্ডবাই মোডে কনফিগার করতে হবে। আপনার একাধিক Postgres মাস্টার নোড থাকলে, Edge-এ Monetization ইনস্টল করতে পারবেন না। আরও জানতে, দেখুন Postgres-এর জন্য মাস্টার-স্ট্যান্ডবাই রেপ্লিকেশন সেট-আপ করুন।
- অল-ইন-ওয়ান (AIO) কনফিগারেশনের সাথে মনিটাইজেশন উপলভ্য নয়।
ইনস্টলেশন ওভারভিউ
নিম্নলিখিত ধাপগুলি থেকে কীভাবে আগে থেকে ইনস্টল করা Apigee Edge-এ মনিটাইজেশন পরিষেবা যোগ করতে হয় তা বোঝা যায়:
- Apigee ম্যানেজমেন্ট সার্ভার নোড আপডেট করতে
apigee-setupইউটিলিটি ব্যবহার করুন। এর ফলে ক্যাটালগ ম্যানেজমেন্ট, সীমা ও বিজ্ঞপ্তি কনফিগারেশন, বিলিং ও রিপোর্টিংয়ের মতো মনিটাইজেশন পরিষেবা চালু হয়ে যাবে।আপনার যদি একাধিক ম্যানেজমেন্ট সার্ভার নোড থাকে, যেমন ১৩-নোড ইনস্টলেশন, তাহলে আপনাকে অবশ্যই মনিটাইজেশন ইনস্টল করার আগে দুটি এজ ম্যানেজমেন্ট সার্ভার নোড ইনস্টল করতে হবে।
apigee-setupApigee মেসেজ প্রসেসর আপডেট করতে ইউটিলিটি ব্যবহার করুন যাতে মনিটাইজেশন পরিষেবার রানটাইম কম্পোনেন্ট চালু করা যায়, যেমন, ট্রানজ্যাকশন রেকর্ডিং নীতি ও সীমা প্রয়োগ করা। আপনার একাধিক মেসেজ প্রসেসর থাকলে, সবগুলিতেই মনিটাইজেশন ইনস্টল করুন।- আপনার Edge সংস্থার জন্য মনিটাইজেশন অনবোর্ডিং প্রসেস সম্পূর্ণ করুন।
- মনিটাইজেশনের জন্য Apigee Developer Services পোর্টাল (বা সহজভাবে, পোর্টাল) কনফিগার করুন। আরও তথ্যের জন্য, ডেভেলপার পোর্টালে মনিটাইজেশন কনফিগার করুন দেখুন।
মনিটাইজেশনের জন্য সাইলেন্ট কনফিগারেশন ফাইল তৈরি করা
নিচে মনিটাইজেশন ইনস্টলেশনের জন্য একটি উদাহরণ সাইলেন্ট কনফিগারেশন ফাইল দেখানো হল। আপনার কনফিগারেশনের জন্য প্রয়োজন অনুযায়ী এই ফাইল এডিট করুন। এই ফাইল অন্তর্ভুক্ত করতে setup.sh-এ -f বিকল্প ব্যবহার করুন।
# Edge configuration properties # Specify IP address or DNS name of node. IP1=192.168.1.1 # Management Server, SymasLDAP, 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 কনফিগারেশন ফাইলে SMTP সংক্রান্ত তথ্য উল্লেখ করা না থাকলে, সেটি যোগ করুন। মনিটাইজেশনের জন্য একটি SMTP সার্ভার প্রয়োজন।
- সিঙ্গেল ডেটা সেন্টার ইনস্টলেশনে, সব ZooKeeper নোড ডিফল্ট হিসেবে লিডার হিসেবে কনফিগার করা হয়। আপনি একাধিক ডেটা সেন্টার জুড়ে Edge ইনস্টল করার সময়, কিছু ZooKeeper নোডকে অবজার্ভার হিসেবে কনফিগার করা হবে। নিশ্চিত করুন যে উপরে উল্লিখিত ZK_HOSTS প্রপার্টি একাধিক ডেটা সেন্টার ইনস্টলেশনে একটি লিডার নোড নির্দিষ্ট করে।
- আপনি Cassandra যাচাইকরণ চালু করলে, নিম্নলিখিত প্রপার্টি ব্যবহার করে Cassandra ব্যবহারকারীর নাম ও পাসওয়ার্ড
প্রদান করতে পারবেন:
CASS_USERNAME CASS_PASSWORD
সব ম্যানেজমেন্ট সার্ভারের সাথে মনিটাইজেশন পরিষেবা ইন্টিগ্রেট করা
ম্যানেজমেন্ট সার্ভার নোডে মনিটাইজেশন ইন্টিগ্রেট করতে নিম্নলিখিত পদ্ধতি ব্যবহার করুন।
- আপনি যদি এমন একটি Edge টপোলজিতে মনিটাইজেশন ইনস্টল করেন যা একাধিক ম্যানেজমেন্ট সার্ভার নোড ব্যবহার করে, যেমন একটি ১৩-নোড ইনস্টলেশন, তাহলে নিশ্চিত করুন যে আপনি মনিটাইজেশন ইনস্টল করার আগে দুটি ম্যানেজমেন্ট সার্ভার নোডই ইনস্টল করেছেন।
- ম্যানেজমেন্ট সার্ভার নোডে, সেট-আপ স্ক্রিপ্ট রান করান:
/opt/apigee/apigee-setup/bin/setup.sh -p mo -f configFile
-p moবিকল্পটি মনিটাইজেশন ইন্টিগ্রেট করার কথা নির্দিষ্ট করে।কনফিগারেশন ফাইল "apigee" ব্যবহারকারীর অ্যাক্সেসযোগ্য বা পাঠযোগ্য হতে হবে।
- আপনি একাধিক ম্যানেজমেন্ট সার্ভার নোডে মনিটাইজেশন ইনস্টল করলে, দ্বিতীয় ম্যানেজমেন্ট সার্ভার নোডে ২ নম্বর ধাপটি আবার করুন।
সফলভাবে কনফিগার করা হলে, PostgreSQL ডেটাবেসে মনিটাইজেশন পরিষেবার জন্য একটি RDBMS স্কিমা তৈরি করা হয়। এর ফলে Postgres সার্ভারের সাথে মনিটাইজেশন পরিষেবা ও এর সংশ্লিষ্ট কম্পোনেন্ট ইন্টিগ্রেশন সম্পূর্ণ হয়।
সব মেসেজ প্রসেসরের সাথে মনিটাইজেশন পরিষেবা ইন্টিগ্রেট করা
সব Message Processor নোডে মনিটাইজেশন ইন্টিগ্রেট করতে নিম্নলিখিত পদ্ধতি ব্যবহার করুন।
- প্রথম মেসেজ প্রসেসর নোডে, কমান্ড প্রম্পটে, সেট-আপ স্ক্রিপ্ট রান করান:
/opt/apigee/apigee-setup/bin/setup.sh -p mo -f configFile
-p moবিকল্পটি মনিটাইজেশন ইন্টিগ্রেট করার কথা নির্দিষ্ট করে।কনফিগারেশন ফাইল "apigee" ব্যবহারকারীর অ্যাক্সেসযোগ্য বা পাঠযোগ্য হতে হবে।
- সব মেসেজ প্রসেসর নোডে এই পদ্ধতিটি রিপিট করুন।
সফলভাবে কনফিগার করা হলে, মনিটাইজেশন পরিষেবা সহ মেসেজ প্রসেসর আপডেট করা হয়। এর ফলে মনিটাইজেশন পরিষেবা এবং এর সাথে যুক্ত কম্পোনেন্ট মেসেজ প্রসেসরের সাথে ইন্টিগ্রেট করা সম্পূর্ণ হয়।
মনিটাইজেশন অনবোর্ডিং
নতুন সংস্থা তৈরি করতে এবং মনিটাইজেশন চালু করতে:
- আপনি যেভাবে নতুন কোনও প্রতিষ্ঠান তৈরি করেন, সেইভাবেই প্রতিষ্ঠান তৈরি করুন। আরও তথ্যের জন্য, কোনও সংস্থাকে অনবোর্ড করা দেখুন।
- কোনও সংস্থার জন্য মনিটাইজেশন চালু করুন নিবন্ধে বর্ণিত মনিটাইজেশন প্রভিশনিং API ব্যবহার করুন। এটি করতে, আপনার কাছে অবশ্যই সিস্টেম অ্যাডমিনিস্ট্রেটরের বিশেষ সুবিধা থাকতে হবে।
পরের বার Edge UI-তে লগ-ইন করলে, আপনি দেখতে পাবেন যে সবচেয়ে উপরের লেভেলের মেনুতে সংস্থাটির জন্য মনিটাইজেশন এন্ট্রি রয়েছে:

মনিটাইজেশনের জন্য পোর্টাল কনফিগার করতে, ডেভেলপার পোর্টালে মনিটাইজেশন কনফিগার করুন দেখুন।
মনিটাইজেশন ইনস্টলেশনে ম্যানেজমেন্ট সার্ভার নোড যোগ করা
আগে থেকে ইনস্টল করা Edge-এ ম্যানেজমেন্ট সার্ভার যোগ করলে, আপনাকে অবশ্যই নিশ্চিত করতে হবে যে নতুন ম্যানেজমেন্ট সার্ভারে মনিটাইজেশন পরিষেবা যোগ করেছেন এবং সব ম্যানেজমেন্ট সার্ভার কনফিগার করেছেন যাতে সেগুলি যোগাযোগ করতে পারে।
ম্যানেজমেন্ট সার্ভার যোগ করতে:
- নতুন ম্যানেজমেন্ট সার্ভার ইনস্টল করুন।
- নিম্নলিখিত কমান্ড ব্যবহার করে নতুন ম্যানেজমেন্ট সার্ভারে মনিটাইজেশন ইনস্টল করুন:
/opt/apigee/apigee-setup/bin/setup.sh -p mo -f /opt/silent.conf
অতিরিক্ত কনফিগারেশন
বিলিং ডকুমেন্ট পিডিএফ ফাইল হিসেবে জমা দিন
মনিটাইজেশন, ব্যবহারকারীদের HTML ফর্ম্যাটে বিলিং ডকুমেন্ট দেখায়। বিলিং ডকুমেন্ট PDF ফাইল হিসেবে প্রদান করতে, আপনি এমন বিলিং সিস্টেমের সাথে মনিটাইজেশন ইন্টিগ্রেট করতে পারেন যা PDF তৈরি করে অথবা মানানসই থার্ড-পার্টি PDF লাইব্রেরি লাইসেন্স করুন।
সংস্থার সেটিংস কনফিগার করা
সংস্থা সম্পর্কিত অ্যাট্রিবিউট যোগ/আপডেট করতে, আপনি PUT অনুরোধ ব্যবহার করতে পারেন, যেমনটি নিম্নলিখিত
উদাহরণে দেখানো হয়েছে:
curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD \ -v http://ms_IP:8080/v1/organizations/orgId -d 'org object with attributes' -X PUT
মনিটাইজেশন, সংস্থার সেটিংসের সাথে উত্তর দেয়। যেমন:
{
...
"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" (ডিফল্ট হল null) |
MINT_CURRENCY
|
ISO কারেন্সি কোড (ডিফল্ট মান হল শূন্য) |
MINT_TAX_NEXUS
|
ট্যাক্স নেক্সাস (ডিফল্ট মান হল শূন্য) |
MINT_DEFAULT_PROD_TAX_CATEGORY
|
ডিফল্ট প্রোডাক্ট ট্যাক্স বিভাগ (ডিফল্ট হল শূন্য) |
MINT_IS_GROUP_ORG
|
IS গ্রুপ সংস্থা (ডিফল্ট হল "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" (default is "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
|
ম্যানেজমেন্ট UI-এর মাধ্যমে মনিটাইজেশন নির্দিষ্ট মেনু দেখাতে ব্যবহার করা হয় (ডিফল্ট হল "false") |
ui.config.isOperator
|
ম্যানেজমেন্ট UI-এর মাধ্যমে প্রোভাইডারকে অপারেটর বনাম সংস্থা হিসেবে দেখানোর জন্য ব্যবহার করা হয় (ডিফল্ট হল "true") |
ম্যানেজমেন্ট UI ব্যবহার করে ব্যবসায়িক প্রতিষ্ঠানের সেটিংস কনফিগার করার জন্য, মনিটাইজেশন ব্যবহার করা শুরু করুন দেখুন।
মনিটাইজেশন সংক্রান্ত সীমা
মনিটাইজেশন সীমা প্রয়োগ করতে, API প্রক্সিতে মনিটাইজেশন সীমা চেক করার নীতি অ্যাটাচ করুন। বিশেষত, নিম্নলিখিত শর্তে এই নীতি প্রয়োগ করা হয়:
- যে ডেভেলপার মনিটাইজ করা API অ্যাক্সেস করছেন তিনি রেজিস্টার করেননি বা রেট প্ল্যানে সাবস্ক্রাইব করেননি।
- সাবস্ক্রাইব করা রেট প্ল্যানের জন্য ডেভেলপার ট্রানজ্যাকশনের ভলিউম অতিক্রম করে গেছেন।
- ডেভেলপারের প্রিপেড অ্যাকাউন্টের ব্যালেন্স বা পোস্ট-পেড ক্রেডিট সীমা শেষ হয়ে গেছে।
মনিটাইজেশন সীমা চেক করার নীতি, উপরে তালিকাভুক্ত করা পরিস্থিতিগুলির মতো পরিস্থিতিতে ত্রুটি খুঁজে পায় এবং API কল ব্লক করে। এই নীতিটি Raise Fault নীতিকে আরও বিস্তৃত করে এবং আপনি রিটার্ন করা মেসেজটি কাস্টমাইজ করতে পারবেন। প্রযোজ্য শর্তাবলী ব্যবসার ভেরিয়েবল থেকে পাওয়া যায়।
আরও তথ্যের জন্য, API প্রক্সিতে মনিটাইজেশন সংক্রান্ত সীমা প্রয়োগ করুন দেখুন।