WHMCS এ কিভাবে ক্রন জব রান করাবেন এবং অটোমেশন সেটিংস্ কনফিগার করবেন
গত পর্বে আমরা WHMCS এর জেনারেল সেটিংস্ কনফিগারেশন নিয়ে আলোচনা করেছি, আজকের পর্বে আমরা দেখবো কিভাবে একটি নতুন ক্রন জব তৈরি করবেন এবং কিভাবে WHMCS এর অটোমেশন সেটিংস্ কনফিগারেশন করবেন।
আগের পর্বগুলো মিস করেছেন?!
ইন্টারফেস ও পরিচিতি (WHMCS পর্ব-১)
কিভাবে নতুন ক্লায়েন্ট অ্যাড করবেন (WHMCS পর্ব-২)
কিভাবে নতুন অর্ডার অ্যাড করবেন (WHMCS পর্ব-৩)
কিভাবে জেনারেল সেটিংস কনফিগারেশন করবেন (WHMCS পর্ব-৪)
অটোমেশন সেটিংস্ কনফিগার করার জন্য প্রথমে আপনার WHMCS এডমিন প্যানেলে লগিন করুন এবং Setup সেকশন থেকে Automation Settings এ ক্লিক করুন।
জেনারেল সেটিংস্ এর মত এখানে ও আপনাকে Password দিয়ে Automation Settings এ অ্যাক্সেস করতে হবে।
এখানে Password দিয়ে কনফার্ম করার পর আপনি নিচের মত একটি পেজ দেখতে পাবেন।
Cron Command
WHMCS এ যে মডিউল গুলো অটোমেটিক এক্সিকিউট হয় সবগুলো ক্রন জব এর মাধ্যমে হয়। ক্রন জব দিয়ে একটা স্ক্রিপ্ট/কোড নির্দিষ্ট সময় পর পর স্বয়ংক্রিয়ভাবে সার্ভারে রান করানো যায়। যেমন ধরুন আপনি এমন একটা স্ক্রিপ্ট লিখে রাখলেন যেটা প্রতিদিন একবার অটোমেটিক রান হবে, এভাবে আপনি চাইলে সেই স্ক্রিপ্ট দিয়ে ডেটাবেসের কোন টেবিলের ডেটা যাচাই করে অতিরিক্ত ডেটা মুছে দিতে পারেন।
WHMCS এ ক্রন জব তৈরি এবং রান করার জন্য উপরে কমান্ড বক্স থেকে ক্রন কমান্ড বা কোডটি কপি করুন এবং আপনার সি-প্যানেলে লগিন করুন।
*/5 * * * * php -q /home/username/yoursite.com/crons/cron.php
সি-প্যানেলের Advanced Section থেকে Cron Jobs এ ক্লিক করুন।
WHMCS এর ক্রন কমান্ডে যেহেতু Once Per Five Minutes দেওয়া আছে, সেক্ষেত্রে আপনাকে সিপ্যানেলে ও Common Settings থেকে Once Per Five Minutes সিলেক্ট করে দিতে হবে। এর পর Command বক্সে গিয়ে WHMCS থেকে পাওয়া কমান্ডটি পেস্ট করুন। কমান্ড পেস্ট করার সময় উপরের চিত্রের মত php থেকে শুরু করুন অর্থাৎ php এর আগের অংশ কেটে তারপর পেস্ট করুন এবং Add New Cron Job এ ক্লিক করুন।
php -q /home/username/yoursite.com/crons/cron.php
Automatic Module Functions
Enable Suspension: আপনি যদি Automatic Suspension এনাবেল রাখতে চান তাহলে Enable Suspension মার্ক করুন। এতে আপনার কোন ক্লায়েন্ট এর পেমেন্ট ডিউ থাকলে অটোমেটিক তার সার্ভিস সাসপেন্ড হয়ে যাবে।
Suspend Days: এখানে আপনি সার্ভিস সাসপেন্ড এর জন্য সময় নির্ধারন করে রাখতে পারেন। যেমন, আপনার ক্লায়েন্ট এর সার্ভিসের পেমেন্ট আজকে দিতে হবে, নাহলে অটোমেটিক সার্ভিস সাসপেন্ড হয়ে যাবে। আপনি চাইলে এখানে ক্লায়েন্টকে বিল পে করার জন্য আরো ৫-৭ দিন সময় বাড়িয়ে দিতে পারেন। আর আপনি ক্লায়েন্টকে যে সময়টকু বাড়তি দিতে চান, তা এখানে উল্লেখ করে দিতে হবে।
Send Suspension Email: এই ফাংশনটি চালু রাখলে, ক্লায়েন্ট এর সার্ভিস সাসপেন্ড এর পর এডমিন এবং ক্লায়েন্ট একটি সাসপেন্ড কনফার্মেশন মেইল পাবে।
Enable Unsuspension: এই ফাংশনটি চালু রাখার মাধ্যমে ক্লায়েন্ট এর পেমেন্ট কম্লপিট হওয়ার পরে অটোমেটিক সার্ভিস আনসাসপেন্ড এবং অ্যাক্টিভ হয়ে যাবে।
Send Unsuspension Email: এই ফাংশনটি চালু রাখলে, ক্লায়েন্ট এর সার্ভিস আনসাসপেন্ড এর পর এডমিন এবং ক্লায়েন্ট একটি আনসাসপেন্ড কনফার্মেশন মেইল পাবে।
Enable Termination: আপনি যদি চান, ক্লায়েন্ট নির্দিষ্ট সময়ের ভেতর বিল না পে করলে তার সার্ভিস পুরোপুরি ক্লোজ হয়ে যাবে, তাহলে এই ফাংশনটি এনাবেল করে রাখতে পারেন।
Termination Days: আপনি চাইলে এখানেও সাসপেন্ড এর মত সময় নির্ধারন করে দিতে পারেন।
Billing Settings
এখান থেকে আপনি আপনার বিলিং সম্পর্কিত সব অটোমেশন সেটিংস্ কাস্টমাইজ করতে পারবেন।
Invoice Generation: এখানে আপনাকে একটা সময় নির্দিষ্ট করে দিতে হবে, যে আপনার ক্লায়েন্ট এর সার্ভিস বা প্রোডাক্ট এর ডিউ পেমেন্ট ডেট এর কতদিন আগে তার সার্ভিস বা প্রোডাক্ট এর জন্য অটোমেটিক একটা Invoice তৈরি হয়ে যাবে।
Payment Reminder Emails: এই ফাংশনের কাজ হচ্ছে ক্লায়েন্টকে ইমেইল এর মাধ্যমে পেমেন্ট এর রিমাইন্ডার দেওয়া এবং ডিউ ইনভয়েস পাঠিয়ে দেওয়া।
Invoice Unpaid Reminder: এখানে আপনাকে সময় নির্দিষ্ট করে দিতে হবে, যে ক্লায়েন্ট এর পেমেন্ট ডিউ ডেট এর কতদিন আগে ক্লায়েন্টের কাছে আনপেইড ইনভয়েচ সহ রিমাইন্ডার যাবে।
First Overdue Reminder: ক্লায়েন্ট এর বিল পে করার নির্দিষ্ট তারিখ এর পরও আপনি যদি ক্লায়েন্টকে সময় দিতে চান, তাহলে First, Second, Third Overdue Reminder এ সময় নির্ধারণ করে দিতে পারেন।
Add Late Fee Days: আপনি চাচ্ছেন, ক্লায়েন্ট নির্দিষ্ট সময়ের পরেও বিল পে না করলে তার সার্ভিস প্রাইস এর সাথে এক্সট্রা লেট ফি অ্যাড করে দিবেন, তাহলে আপনি একটা সময় নির্ধারন করে দিতে পারেন। যেমন, ক্লায়েন্ট যদি বিল পে করার ডেট এর ৫ দিন পর বিল পে করতে চায় তাহলে ক্লায়েন্টকে অতিরিক্ত লেট ফি সহ বিল পরিশোদ করতে হবে।
Overage Billing Charges:
১ম অপশন-
ক্লায়েন্ট যদি রানিং মাসের ৫ তারিখে কোন প্রোডাক্ট বা সার্ভিস অর্ডার করে তাহলে পরের মাসের ৪ তারিখে ক্লায়েন্ট এর ইনভয়েস ক্যলকুলেট হবে।
২য় অপশন-
ক্লায়েন্ট যদি রানিং মাসের ৫ তারিখে কোন প্রোডাক্ট বা সার্ভিস অর্ডার করে তাহলে মাসের শেষ দিন ক্লায়েন্ট এর নামে ইনভয়েস ক্যলকুলেট হবে বাকি ৫ দিনের টা পরের মাসের ইনভয়েস এর সাথে যুক্ত হবে।
Change Invoice Status, Change Invoice Due Dates: বাকি পেমেন্ট পে করার পর অটোমেটিক ইনভয়েস স্ট্যাটাস এবং ডিউ ডেট আপডেট/পরিবর্তন হয়ে যাবে।
Credit Card Charging Settings
Process Days Before Due: এখানে আপনাকে সময় নির্ধারন করে দিতে হবে, যে ক্লায়েন্ট এর বিল পেমেন্ট ডেট এর কতদিন আগে ক্রেডিট কার্ড থেকে বিল চার্জ করা হবে।
Attempt Only Once: এই ফাংশনটি চালু রাখলে, কোন কারনে যদি ক্রেডিট কার্ড থেকে বিল চার্জ করার সময় Failed হয় তাহলে এটি আর অটোমেটিক বিল চার্জ করার চেস্টা করবেনা।
Retry every Week For: এখানে যদি আপনি ১ নির্ধারন করে দেন, তাহলে ক্রেডিট কার্ড থেকে বিল চার্জ করতে গিয়ে Failed হওয়ার ১ সপ্তাহ পর আবার ১বার অটোমেটিক বিল চার্জিং প্রচেস রান হবে।
CC Expiry Notices Date: ধরুন ক্লায়েন্ট এর ক্রেডিট কার্ড এর ভেলিডিটি পরবর্তী মাস পর্যন্ত। আপনি যদি এখানে ২৫ বা ২৭ নির্ধারন করে দেন তাহলে রানিং মাসের ২৫ বা ২৭ তারিখ এ ক্লায়েন্ট এর কাছে কার্ড এক্সপায়ার সম্পর্কিত একটা মেইল চলে যাবে। এবং সাথে ক্লায়েন্ট এর ঐ কার্ড এর সমস্ত ইনফর্মেশন রিমুভ হয়ে যাবে। আপনি যদি চান যে ক্লায়েন্ট এর কার্ড এক্সপায়ার হয়ে গেলে ও কার্ড এর ইনফর্মেশন থাকবে তাহলে নিচের অপশনটি (Do Not Remove CC On Expiry) মার্ক করে রাখুন।
Currency Auto Update Settings
Exchange Rates: এই ফাংশন এর কাজ হচ্ছে এক্সচেঞ্জ রেট অনুযায়ী ডেইলি কারেন্সি আপডেট রাখা।
Product Price: এই ফাংশনটি চালু রাখলে ডেইলি এক্সচেঞ্জ রেট এর সাথে প্রোডাক্ট প্রাইস ও আপডেট হবে। এটি এনাবেল না করাই ভালো।
Domain Reminder Settings
এখানে আপনি ডোমেইন রিনিউ সেটিংস্ চাইলে পরিবর্তন করতে পারবেন। যেমন, ক্লায়েন্ট এর ডোমেইন কয়েকদিন এর মধ্যে এক্সপায়ার হয়ে যাবে, আপনি এই অপশনটি ব্যবহারের মাধ্যমে ক্লায়েন্ট নির্দিষ্ট সময় পর পর ডোমেইন এক্সপায়ার সম্পর্কিত রিমাইন্ডার পাঠাতে পারবেন।
Support Ticket Settings
Close Inactive Tickets: এডমিন প্যানেল থেকে ক্লায়েন্টের টিকেট এর রিপ্লাই দেওয়ার পরই ঐ টিকেটটি ইনঅ্যাক্টিভ হয়ে যায়। আর আপনি যদি Close Inactive Tickets অপশনটি চালু রাখেন তাহলে ক্লায়েন্টের টিকেটের রিপ্লাই একবার দেওয়ার পর নির্দিষ্ট সময় পরে যদি ক্লায়েন্ট রিপ্লাই না দেয় তাহলে এটি ইনঅ্যাক্টিভ থেকে যায় এবং ক্লোজ হয়ে যায়। এখানে আপনি যদি জিরো নির্ধারন করে রাখেন, তাহলে টিকেট ক্লোজ হবেনা। আর আপনি যদি সময় নির্ধারন করে দেন তাহলে ক্লায়েন্ট ঐ সময়ের ভেতর রিপ্লাই না করলে টিকেট ক্লোজ হয়ে যাবে।
Miscellaneous
Cancellation Requests: এই অপশনটির কাজ হচ্ছে পেমেন্ট ডিউ থাকলে ক্লায়েন্টের সার্ভিস বা প্রোডাক্ট Terminate এবং Cancellation রিকুয়েস্ট তৈরি করা।
Update Usage Statistics: এই অপশনটি চালু রাখলে WHMCS এডমিন এবং ক্লায়েন্ট এরিয়াতে Disk Usage Statistics শো করবে।
Client Status Update: এই সেকশনে WHMCS অটোমেটিক্যালি ক্লায়েন্ট এর একটিভ/ইনএকটিভ স্ট্যাটাস আপডেট করে ক্লায়েন্ট এর প্রোডাক্ট বা সার্ভিস সাস্পেন্ড এবং আনসাসপেন্ড এর উপর নির্ভর করে।
- Disabled: এই অপশনটি বন্ধ করে রাখলে অটোমেটিক্যালি ক্লায়েন্ট স্ট্যাটাস পরিবর্তন হবে না।
- Change client status based on active/inactive products: ক্লায়েন্টের স্ট্যাটাস আপডেট করার জন্য এই অপশনটি নির্ভর করে ক্লায়েন্টের প্রোডাক্ট বা সার্ভিস এর উপর।
- Change client status based on active/inactive products and not logged in for longer than 3 months: ক্লায়েন্টের স্ট্যাটাস আপডেট করার জন্য এই অপশনটি নির্ভর করে ক্লায়েন্ট এর প্রোডাক্ট এবং লগিন অ্যাক্টিভিটিজ এর উপর।
আজকের পর্বে এই পর্যন্তই। কোথাও বুঝতে সমস্যা হলে কমেন্ট করুন এবং WHMCS এর গুরত্বপূর্ণ পার্টগুলো জানতে টস বাংলা ব্লগের সাথেই থাকুন।