
Modern PHP SDK with Laravel integration
Get up and running with the Fluxum PHP SDK in minutes
composer require fluxum/fluxum-sdk-phpFull Laravel integration with service providers and dependency injection.
Comprehensive exception handling and retry mechanisms.
Event-driven architecture with listeners and priority-based job queuing.
Handle real-time events with the SDK
<?php
class MyEventListener implements SDKEventListener
{
public function onConnect(): void
{
echo "Connected!";
}
public function onJobUpdate(string $jobId, string $status, array $data): void
{
echo "Job update: $jobId, $status";
}
public function onError(string $error): void
{
echo "Error: $error";
}
}
$sdk->addEventListener(new MyEventListener());Examples of different job types and configurations
// Submit high priority job
$urgentJob = new JobPayload([
'type' => 'urgent_notification',
'data' => ['message' => 'System alert'],
'priority' => 'high'
]);
$urgentJobId = $sdk->submitJob($urgentJob);
// Submit normal priority job
$normalJob = new JobPayload([
'type' => 'regular_update',
'data' => ['message' => 'Daily report'],
'priority' => 'normal'
]);
$normalJobId = $sdk->submitJob($normalJob);Advanced configuration and features
<?php
namespace App\Services;
use Fluxum\SDK\FluxumSDK;
use Illuminate\Support\ServiceProvider;
class FluxumServiceProvider extends ServiceProvider
{
public function register(): void
{
$this->app->singleton(FluxumSDK::class, function ($app) {
return new FluxumSDK([
'api_key' => config('fluxum.api_key'),
'environment' => config('fluxum.environment', 'sandbox'),
'auto_connect' => true
]);
});
}
}
// In your controller or service
class OrderService
{
public function __construct(private FluxumSDK $sdk) {}
public function processOrder(array $orderData): string
{
$jobPayload = new JobPayload([
'type' => 'process_order',
'data' => $orderData,
'priority' => 'high'
]);
return $this->sdk->submitJob($jobPayload);
}
}Comprehensive error handling and recovery
<?php
class RobustEventListener implements SDKEventListener
{
public function onError(string $error): void
{
if (str_contains($error, 'AUTHENTICATION')) {
error_log("❌ Authentication failed: {$error}");
// Implement retry logic
} elseif (str_contains($error, 'CONNECTION')) {
error_log("❌ Connection failed: {$error}");
// Implement reconnection logic
} elseif (str_contains($error, 'RATE_LIMIT')) {
error_log("⏰ Rate limit exceeded: {$error}");
// Implement backoff strategy
} else {
error_log("❌ Unknown error: {$error}");
}
}
}
$sdk->addEventListener(new RobustEventListener());System requirements and dependencies
PHP 8.0 or higher
Complete API documentation
$sdk = new FluxumSDK(array $options);// Connect
$sdk->connect();
// Submit job
$sdk->submitJob(JobPayload $payload);
// Add event listener
$sdk->addEventListener(SDKEventListener $listener);
// Set options
$sdk->setOptions(array $options);
// Disconnect
$sdk->disconnect();