mirror of
https://github.com/ProxyPanel/ProxyPanel.git
synced 2026-04-02 18:48:36 +00:00
This update adds Laravel Reverb as the broadcast driver, introduces event classes for node actions and payment status updates, and implements real-time node management (check, geo refresh, reload) with asynchronous jobs and broadcasting. The admin node UI is refactored to use modals and real-time updates via Echo, and frontend assets are updated to support Reverb. Composer and configuration files are updated for Reverb, and install scripts now handle Reverb setup. Payment status updates are now broadcast to the frontend for real-time feedback.
90 lines
2.9 KiB
PHP
90 lines
2.9 KiB
PHP
<?php
|
|
|
|
return [
|
|
|
|
/*
|
|
|--------------------------------------------------------------------------
|
|
| Default Broadcaster
|
|
|--------------------------------------------------------------------------
|
|
|
|
|
| This option controls the default broadcaster that will be used by the
|
|
| framework when an event needs to be broadcast. You may set this to
|
|
| any of the connections defined in the "connections" array below.
|
|
|
|
|
| Supported: "pusher", "ably", "redis", "log", "null"
|
|
|
|
|
*/
|
|
|
|
'default' => env('BROADCAST_DRIVER', 'null'),
|
|
|
|
/*
|
|
|--------------------------------------------------------------------------
|
|
| Broadcast Connections
|
|
|--------------------------------------------------------------------------
|
|
|
|
|
| Here you may define all of the broadcast connections that will be used
|
|
| to broadcast events to other systems or over websockets. Samples of
|
|
| each available type of connection are provided inside this array.
|
|
|
|
|
*/
|
|
|
|
'connections' => [
|
|
|
|
'reverb' => [
|
|
'driver' => 'reverb',
|
|
'key' => env('REVERB_APP_KEY'),
|
|
'secret' => env('REVERB_APP_SECRET'),
|
|
'app_id' => env('REVERB_APP_ID'),
|
|
'options' => [
|
|
'host' => env('REVERB_HOST'),
|
|
'port' => env('REVERB_PORT', env('REVERB_SCHEME', 'https') === 'https' ? 443 : 80),
|
|
'scheme' => env('REVERB_SCHEME', 'https'),
|
|
'useTLS' => env('REVERB_SCHEME', 'https') === 'https',
|
|
...(env('REVERB_PATH', '') ? [
|
|
'base_path' => env('REVERB_PATH').'/apps/'.env('REVERB_APP_ID'),
|
|
] : []),
|
|
],
|
|
'client_options' => [
|
|
// Guzzle client options: https://docs.guzzlephp.org/en/stable/request-options.html
|
|
],
|
|
],
|
|
|
|
'pusher' => [
|
|
'driver' => 'pusher',
|
|
'key' => env('PUSHER_APP_KEY'),
|
|
'secret' => env('PUSHER_APP_SECRET'),
|
|
'app_id' => env('PUSHER_APP_ID'),
|
|
'options' => [
|
|
'host' => env('PUSHER_HOST') ?: 'api-'.env('PUSHER_APP_CLUSTER', 'mt1').'.pusher.com',
|
|
'port' => env('PUSHER_PORT', 443),
|
|
'scheme' => env('PUSHER_SCHEME', 'https'),
|
|
'encrypted' => true,
|
|
'useTLS' => env('PUSHER_SCHEME', 'https') === 'https',
|
|
],
|
|
'client_options' => [
|
|
// Guzzle client options: https://docs.guzzlephp.org/en/stable/request-options.html
|
|
],
|
|
],
|
|
|
|
'ably' => [
|
|
'driver' => 'ably',
|
|
'key' => env('ABLY_KEY'),
|
|
],
|
|
|
|
'redis' => [
|
|
'driver' => 'redis',
|
|
'connection' => 'default',
|
|
],
|
|
|
|
'log' => [
|
|
'driver' => 'log',
|
|
],
|
|
|
|
'null' => [
|
|
'driver' => 'null',
|
|
],
|
|
|
|
],
|
|
|
|
];
|