index_webhook.php 944 B

123456789101112131415161718192021222324252627282930313233
  1. <?php
  2. require __DIR__ . '/../vendor/autoload.php';
  3. use FrameworkX\App;
  4. if (class_exists(Dotenv\Dotenv::class) && file_exists(__DIR__ . '/../.env')) {
  5. Dotenv\Dotenv::createImmutable(
  6. dirname(__DIR__),
  7. null,
  8. true
  9. )->safeLoad();
  10. }
  11. //webhook
  12. error_reporting(E_ALL);
  13. $dsn = $_ENV['DB_DSN'] ?? (function () {
  14. $host = $_ENV['DB_HOST'] ?? 'localhost';
  15. $port = $_ENV['DB_PORT'] ?? '5432';
  16. $name = $_ENV['DB_NAME'] ?? 'postgres';
  17. return "pgsql:host={$host};port={$port};dbname={$name}";
  18. })();
  19. $dbUser = $_ENV['DB_USER'] ?? 'postgres';
  20. $dbPass = $_ENV['DB_PASSWORD'] ?? '';
  21. $GLOBALS['pdo'] = new \PDO($dsn, $dbUser, $dbPass);
  22. $GLOBALS['pdo']->setAttribute(\PDO::ATTR_ERRMODE, \PDO::ERRMODE_EXCEPTION);
  23. $app = new App();
  24. $app->post('/tshield', \Controllers\TshieldWebhookController::class);
  25. $app->post('/woovi', \Controllers\WooviWebhookController::class);
  26. $app->run();