Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Clickatell Laravel Package

arcturial/clickatell

View on GitHub
Deep Wiki
Context7

Standalone PHP library to integrate with the Clickatell SMS gateway.

Frequently asked questions about Clickatell
Is arcturial/clickatell compatible with Laravel 10 and PHP 8.x?
No, this library was last updated in 2016 and targets PHP 5.6+. For Laravel 10/PHP 8.x, you’ll need to manually replace deprecated functions (like `curl` or `file_get_contents`) with Laravel’s `Http` facade or Guzzle. Test thoroughly, as Clickatell’s API may have evolved since then.
How do I send an SMS using this package in Laravel?
The library uses a basic REST client. Initialize it with your API token, then call `sendMessage()` with a recipient array and message content. Example: `$clickatell->sendMessage(['to' => ['+1234567890'], 'content' => 'Hello'])`—but wrap this in a Laravel service provider or facade for cleaner integration.
Does this package support Laravel’s queue system for async SMS sending?
No, the library is synchronous. To use Laravel queues, create a `SendSmsJob` that instantiates the Clickatell client and dispatches it with `SendSmsJob::dispatch($recipient, $message)->delay(now()->addMinute())`. This avoids blocking HTTP requests.
What happens if Clickatell’s API changes or breaks?
Since the library is outdated, you’ll need to manually audit Clickatell’s current API docs and update endpoints/auth methods. Consider forking the repo or building a wrapper around Laravel’s `Http` client for better maintainability and error handling.
Are there Laravel-specific features like events or logging?
No, this is a generic PHP library. To add Laravel features, dispatch custom events (e.g., `SmsSent`, `SmsFailed`) after sending messages, and integrate Monolog for logging by injecting the logger into your wrapper class.
How do I handle webhook callbacks (inbound/outbound SMS) in Laravel?
Use the library’s static callback methods (`Rest::parseStatusCallback()` and `Rest::parseReplyCallback()`) to process webhook payloads. For Laravel, route these to a controller or middleware, then validate and log the data. Ensure your server’s public URL is whitelisted in Clickatell’s portal.
What are the alternatives to arcturial/clickatell for Laravel?
Consider Clickatell’s official PHP SDK (if available) or modern Laravel packages like `spatie/laravel-sms`, which support multiple providers and integrate natively with Laravel’s queue system, events, and HTTP client. These are actively maintained and PHP 8.x compatible.
How do I configure API keys and endpoints in Laravel?
Store credentials in `config/clickatell.php` (e.g., `api_key`, `endpoint`). Bind the library to Laravel’s service container in a `ClickatellServiceProvider` using `$this->app->singleton(ClickatellManager::class, fn($app) => new ClickatellManager(config('clickatell.api_key')))`.
Does this package support batch sending or high-volume SMS?
The library lacks built-in batching or queueing. For high-volume SMS, implement batching logic in your wrapper (e.g., loop through recipients and delay each request) or use Laravel’s queue system with `SendSmsJob` to avoid timeouts or connection issues.
How can I test this package in Laravel without hitting Clickatell’s API?
Mock Clickatell’s API using Laravel’s `Http::fake()`. In your tests, stub responses for `sendMessage` and callback endpoints. Example: `Http::fake([ 'clickatell.com/api/send' => Http::response(['messages' => [...]]) ])`. Test edge cases like invalid numbers or rate limits.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
socialdept/tenant-domains
tautvydasr/blade-class-names
socialdept/color-scales
maherelgamil/controller
coleus/widgets
coleus/table
coleus/users
coleus/music
coleus/health
coleus/calendar
coleus/notes
coleus/support
coleus/settings
coleus/apps
seampact/laravel
emmyconceptng/laravel-ng-postcode
jjsquady/round-robin
skyraptor/chatter
edlugz/sasapay
abbasudo/artisan-route