Compare commits
2 Commits
6baf2e8210
...
8cb8353cc5
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
8cb8353cc5 | ||
|
|
f46853f686 |
@ -57,3 +57,6 @@ VITE_PUSHER_HOST="${PUSHER_HOST}"
|
|||||||
VITE_PUSHER_PORT="${PUSHER_PORT}"
|
VITE_PUSHER_PORT="${PUSHER_PORT}"
|
||||||
VITE_PUSHER_SCHEME="${PUSHER_SCHEME}"
|
VITE_PUSHER_SCHEME="${PUSHER_SCHEME}"
|
||||||
VITE_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}"
|
VITE_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}"
|
||||||
|
|
||||||
|
BOT_SLACK_WEBHOOK_URL=
|
||||||
|
BOT_X_BOTAUTH=
|
||||||
|
|||||||
@ -4,6 +4,7 @@ namespace App\Http\Controllers\Api;
|
|||||||
use App\Http\Controllers\Controller;
|
use App\Http\Controllers\Controller;
|
||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
use Illuminate\Support\Facades\Http;
|
use Illuminate\Support\Facades\Http;
|
||||||
|
use App\Models\Quote;
|
||||||
|
|
||||||
|
|
||||||
class WebhookController extends Controller
|
class WebhookController extends Controller
|
||||||
@ -11,7 +12,7 @@ class WebhookController extends Controller
|
|||||||
|
|
||||||
public function webHookSend(String $payload) {
|
public function webHookSend(String $payload) {
|
||||||
$data = ["text" => $payload];
|
$data = ["text" => $payload];
|
||||||
$response = Http::post(env('SLACK_WEBHOOK_URL'), $data);
|
$response = Http::post(env('BOT_SLACK_WEBHOOK_URL'), $data);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function sendQuote(Request $request)
|
public function sendQuote(Request $request)
|
||||||
@ -25,5 +26,15 @@ class WebhookController extends Controller
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function sendRandomQuote()
|
||||||
|
{
|
||||||
|
$quote = Quote::inRandomOrder()->first()->quote;
|
||||||
|
$this->webHookSend($quote);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function test()
|
||||||
|
{
|
||||||
|
var_dump("secrets");
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -64,5 +64,6 @@ class Kernel extends HttpKernel
|
|||||||
'signed' => \App\Http\Middleware\ValidateSignature::class,
|
'signed' => \App\Http\Middleware\ValidateSignature::class,
|
||||||
'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,
|
'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,
|
||||||
'verified' => \Illuminate\Auth\Middleware\EnsureEmailIsVerified::class,
|
'verified' => \Illuminate\Auth\Middleware\EnsureEmailIsVerified::class,
|
||||||
|
'headerauth' => \App\Http\Middleware\HeaderAuth::class
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
24
app/Http/Middleware/HeaderAuth.php
Normal file
24
app/Http/Middleware/HeaderAuth.php
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Http\Middleware;
|
||||||
|
|
||||||
|
use Closure;
|
||||||
|
use Illuminate\Http\Request;
|
||||||
|
use Symfony\Component\HttpFoundation\Response;
|
||||||
|
|
||||||
|
class HeaderAuth
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Handle an incoming request.
|
||||||
|
*
|
||||||
|
* @param \Closure(\Illuminate\Http\Request): (\Symfony\Component\HttpFoundation\Response) $next
|
||||||
|
*/
|
||||||
|
public function handle(Request $request, Closure $next): Response
|
||||||
|
{
|
||||||
|
if ($request->header('X-BOTAUTH') !== env('BOT_X_BOTAUTH'))
|
||||||
|
{
|
||||||
|
return response('Unauthorized', 401);
|
||||||
|
}
|
||||||
|
return $next($request);
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -15,8 +15,11 @@ use App\Http\Controllers\Api\WebHookController;
|
|||||||
|
|
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
Route::middleware('auth:sanctum')->get('/user', function (Request $request) {
|
Route::middleware('headerauth')->group(function () {
|
||||||
return $request->user();
|
Route::get('/test', [WebHookController::class, 'test']);
|
||||||
|
Route::post('/sendQuote', [WebHookController::class, 'sendQuote']);
|
||||||
|
Route::post('/randomQuote', [WebHookController::class, 'sendRandomQuote']);
|
||||||
});
|
});
|
||||||
|
|
||||||
Route::post('/sendQuote', [WebHookController::class, 'sendQuote']);
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user