hivelink/laravel
Laravel SDK for Hivelink SMS and Inquiry API. Install via Composer, register the service provider/facade, publish config, and set your API key. Send SMS with Hivelink::SendSimple and handle API/HTTP exceptions.
Hivelink facade into services).SmsSent events after API calls) for async workflows.Illuminate\Support\Facades\Retry)..env for API keys).Hivelink::sendSms()).Mockery or Laravel’s Http mocks).HivelinkException vs. HTTP errors). Custom error mapping may be needed..env—ensure keys are never committed and use Laravel’s config/caching if keys change infrequently.config or middleware)?guzzlehttp/guzzle for HTTP calls, which Laravel already includes).Phase 1: Sandbox Integration
php artisan vendor:publish --provider="Hivelink\Laravel\ServiceProvider").Hivelink::sendSms()).Hivelink::checkTransaction()).Phase 2: Feature Expansion
HivelinkApiKey middleware to inject API keys into requests globally.SmsSent, InquiryFailed) for async processing.SendSmsJob) for background processing.Phase 3: Production Readiness
spatie/laravel-queueable-middleware).HivelinkInterface) for easier mocking.Guzzle) is configured (default in Laravel).Hivelink::cacheFor(3600)).Illuminate\Support\Facades\Config vs. config() helper).hivelink/laravel version in composer.json to avoid breaking changes.composer why-not hivelink/laravel to check for updates.config/hivelink.php) for traceability.storage/logs/laravel.log for HiveLink API errors.Hivelink::setDebug(true) if the package supports it.spatie/laravel-backoff).Hivelink::checkBalance()).cache()->remember() for transient data.laravel-log or a dedicated table).| Failure Scenario | Impact | Mitigation |
|---|---|---|
| HiveLink API downtime | SMS/inquiry failures | Implement retry logic + fallback (e.g., email as backup). |
| Invalid API key | All API calls fail | Validate keys on startup (e.g., Hivelink::validateKey()). |
| Rate limit exceeded | Throttled requests | Use Laravel’s throttle middleware or implement queue delays. |
| Network partition | Timeouts | Set connect_timeout/read_timeout in Guzzle config. |
| Malformed payload | API rejects requests | Validate inputs before calling Hivelink (e.g., use Laravel’s Form Requests). |
| Package version incompatibility | Breaking changes | Pin version in composer.json and test upgrades in staging. |
Hivelink::sendSms()).How can I help you explore Laravel packages today?