| 123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- <?php
- use FrameworkX\App;
- use Middlewares\JwtAuthMiddleware;
- require __DIR__ . '/../vendor/autoload.php';
- $path = parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH);
- $file = __DIR__ . $path;
- if (php_sapi_name() === 'cli-server' && is_file($file)) {
- return false;
- }
- if (class_exists(Dotenv\Dotenv::class) && file_exists(__DIR__ . '/../.env')) {
- Dotenv\Dotenv::createImmutable(
- dirname(__DIR__),
- null,
- true
- )->safeLoad();
- }
- error_reporting(E_ALL);
- $app = new App();
- $authJwt = new JwtAuthMiddleware();
- // Rotas versionadas sob /v1 para permitir evolução sem quebrar clientes existentes.
- $app->get('/v1/me', $authJwt, \Controllers\MeController::class);
- $app->get('/v1/dashboard/overview', $authJwt, \Controllers\DashboardOverviewController::class);
- $app->get('/v1/interactions', $authJwt, \Controllers\InteractionsController::class);
- $app->get('/v1/interactions/details', $authJwt, \Controllers\InteractionDetailsController::class);
- $app->get('/v1/analytics/sentiment/dashboard', $authJwt, \Controllers\AnalyticsSentimentDashboardController::class);
- $app->get('/v1/personas/overview', $authJwt, \Controllers\PersonasOverviewController::class);
- $app->get('/v1/evolution/overview', $authJwt, \Controllers\EvolutionOverviewController::class);
- $app->get('/v1/executive/dashboard', $authJwt, \Controllers\ExecutiveDashboardController::class);
- $app->get('/v1/agents', $authJwt, \Controllers\AgentsController::class);
- $app->post('/v1/login', \Controllers\LoginController::class);
- // Registro exige autenticação: o novo usuário herda o company_id do solicitante.
- $app->post('/v1/register', $authJwt, \Controllers\RegisterController::class);
- $app->post('/v1/agents', $authJwt, \Controllers\AgentSaveController::class);
- $app->post('/v1/agents/status', $authJwt, \Controllers\AgentStatusController::class);
- $app->post('/v1/agents/escalation', $authJwt, \Controllers\AgentEscalationController::class);
- $app->run();
|