প্রকল্প সম্পর্কে

laravel-analytics হলো Spatie কর্তৃক নির্মিত একটি Laravel প্যাকেজ যা Google Analytics Data API ব্যবহার করে Google Analytics থেকে এনালাইটিক্স ডেটা আনতে ব্যবহৃত হয়। ## ক্ষমতা প্যাকেজটি `Spatie\Analytics\Facades\Analytics` ফ্যাসাড প্রকাশ করে যার বেশ কয়েকটি সুবিধাজনক মেথড রয়েছে: - `fetchMostVisitedPages(Period $period, int $maxResults = 20)` — fullPageUrl, pageTitle, screenPageViews প্রত্যাবর্তন করে - `fetchVisitorsAndPageViews(Period $period)` — activeUsers এবং screenPageViews প্রত্যাবর্তন করে - `fetchVisitorsAndPageViewsByDate(Period $period)` — প্রতিটি সারিতে একটি date কী যোগ করে - `fetchTotalVisitorsAndPageViews(Period $period)` — তারিখ অনুযায়ী মোট সংখ্যা জমা করে - `fetchTopReferrers(Period $period, int $maxResults = 20)` — pageReferrer এবং screenPageViews প্রত্যাবর্তন করে - `fetchUserTypes(Period $period)` — নতুন vs পূর্ববর্তী ব্যবহারকারী ফেরত দেয় - `fetchTopBrowsers(Period $period, int $maxResults = 10)` — browser এবং screenPageViews প্রত্যাবর্তন করে - `fetchTopCountries(Period $period, int $maxResults = 10)` — country এবং screenPageViews প্রত্যাবর্তন করে - `fetchTopOperatingSystems(Period $period, int $maxResults = 10)` — operatingSystem এবং screenPageViews প্রত্যাবর্তন করে - `get(Period $period, array $metrics, array $dimensions = [], ...)` — অর্ডারিং, পেজিনেশন, ডাইমেনশন ফিল্টার এবং মিট্রিক ফিল্টার সহ যেকোনো GA4 কোয়েরি সব মেথড `Illuminate\Support\Collection` প্রত্যাবর্তন করে। ## ইনস্টলেশন ```bash composer require spatie/laravel-analytics ``` ঐচ্ছিকভাবে কনফিগারেশন প্রকাশ করুন: ```bash php artisan vendor:publish --tag="analytics-config" ``` `config/analytics.php` তে প্রকাশিত কনফিগারেশনে এগুলো প্রয়োজন: - `property_id`: আপনার GA4 প্রপার্টি আইডি - `service_account_credentials_json`: সার্ভিস অ্যাকাউন্ট JSON কী-এর পথ অথবা ক্রেন্টিডিয়ালসহ একটি অ্যারে - `cache_lifetime_in_minutes`: ডিফল্ট 1440 মিনিট; ক্যাশিং বন্ধ করতে 0 সেট করুন - `cache.store` এবং অনুরূপ ক্যাশের জন্য ঐচ্ছিক প্রিফিক্স/লাইফটাইম ## স্বাক্ষরায়ন সেটআপ 1. [Google Cloud Console](https://console.developers.google.com/apis)-এ একটি প্রজেক্ট তৈরি করুন 2. API লাইব্রেরিতে **Google Analytics Data API** সক্রিয় করুন 3. একটি সার্ভিস অ্যাকাউন্ট তৈরি করুন এবং এর JSON কী ডাউনলোড করুন 4. কমপক্ষে Analyst রোল দিয়ে আপনার GA4 প্রপার্টি সার্ভিস অ্যাকাউন্ট ইমেইলের সাথে শেয়ার করুন 5. JSON ফাইলটি নিরাপদে সংরক্ষণ করুন এবং কনফিগে এর দিকে ইঙ্গিত করুন ## সময়কাল `Spatie\Analytics\Period` ক্লাস সমর্থন করে: ```php Period::days(7) Period::months(6) Period::create($startDate, $endDate) // Carbon ইনস্ট্যান্স গ্রহণ করে ``` ## ফেকে সহ পরীক্ষা একক ও বৈশিষ্ট্য পরীক্ষার জন্য ফ্যাসাড একটি `fake` মেথড প্রদান করে: ```php use Spatie\Analytics\Facades\Analytics; Analytics::fake(); // বা পূর্বনির্ধারিত প্রতিক্রিয়া সহ Analytics::fake([ ['pageTitle' => 'Home', 'activeUsers' => 10, 'screenPageViews' => 20], ]); ``` প্যাকেজের পরীক্ষা চালানোর জন্য: ```bash vendor/bin/pest ``` ## লাইসেন্স MIT লাইসেন্সড। বিস্তারিত দেখতে রিপোজিটরির LICENSE দেখুন।