schneespur/release/schneespur-1.0.2/app/Services/Weather/OpenMeteoApiProvider.php
Michael 7288b93500 Release v1.0.2: diagnostic infrastructure core
Add neutral diagnostic framework for future reporting modules:
- DiagnosticReporterInterface, Registry, Manager, PayloadSanitizer
- Laravel exception hook in bootstrap/app.php
- Module permission declarations (requires_permissions in module.json)
- Core diagnostic report points (module boot/install/update failures)
- Module documentation update (moduldoku.md)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-18 16:54:11 +00:00

36 lines
769 B
PHP

<?php
namespace App\Services\Weather;
use App\Models\Setting;
class OpenMeteoApiProvider extends OpenMeteoBase
{
protected const API_URL = 'https://customer-api.open-meteo.com/v1/forecast';
protected function providerSlug(): string
{
return 'openmeteo_api';
}
protected function buildQuery(float $lat, float $lon): array
{
return [
'latitude' => $lat,
'longitude' => $lon,
'current' => static::CURRENT_PARAMS,
'timezone' => 'auto',
'apikey' => Setting::get('weather_api_key', ''),
];
}
public function name(): string
{
return 'Open-Meteo (API-Key)';
}
public function requiresApiKey(): bool
{
return true;
}
}