mirror of
https://github.com/Bigherollc/wticreatorstudio.git
synced 2026-09-29 12:13:06 -04:00
58 lines
1.6 KiB
PHP
58 lines
1.6 KiB
PHP
<?php
|
|
|
|
namespace Modules\Livestream\Http\Controllers;
|
|
|
|
use Illuminate\Contracts\Support\Renderable;
|
|
use Illuminate\Http\Request;
|
|
use Illuminate\Routing\Controller;
|
|
use Illuminate\Support\Facades\Log;
|
|
use Modules\Livestream\Facades\Restream;
|
|
use Modules\Livestream\Http\Requests\UpdateRestreamSettingsRequest;
|
|
use Modules\Livestream\Traits\ApiResponse;
|
|
|
|
class RestreamController extends Controller
|
|
{
|
|
use ApiResponse;
|
|
|
|
public function connect()
|
|
{
|
|
return Restream::connect();
|
|
}
|
|
|
|
public function callback(Request $request)
|
|
{
|
|
Log::info($request);
|
|
$message = 'Failed to connect Restream.';
|
|
$stateToken = session('state-token');
|
|
|
|
if ($request->state === $stateToken) {
|
|
$result = Restream::exchange($request->code);
|
|
|
|
Log::info('Restream exchange result:');
|
|
Log::info($result);
|
|
|
|
if ($result) {
|
|
$message = 'Restream has been successfully connected.';
|
|
}
|
|
} else {
|
|
$message = 'Mismatch state token.';
|
|
Log::info($message);
|
|
$result = false;
|
|
}
|
|
|
|
session([
|
|
'restream-connect-result' => $result ? 'success' : 'failed',
|
|
'restream-connect-message' => $message,
|
|
]);
|
|
|
|
return redirect()->route('livestream.index');
|
|
}
|
|
|
|
public function updateSettings(UpdateRestreamSettingsRequest $request)
|
|
{
|
|
Restream::updateSettings($request->safe()->client_id, $request->safe()->client_secret);
|
|
|
|
return $this->success('Restream settings has been updated.');
|
|
}
|
|
}
|