diff --git a/.env b/.env index d65d0864c93a372b2e2d965bf43ac55a9101bcec..e23d481b55f86780624d7cb6fea4a65fb7743325 100644 --- a/.env +++ b/.env @@ -28,12 +28,11 @@ APP_SECRET=6e3e4d39ef67eb1ef9d8aea9f82d32a0 DATABASE_URL="postgresql://app:!ChangeMe!@127.0.0.1:5432/app?serverVersion=14&charset=utf8" ###< doctrine/doctrine-bundle ### -WEB_RESETTER_IP=10.1.0.1 -WEB_RESETTER_APIKEY= +API_TIMEOUT=10 TOTP_ISSUER=WebResetter ###> symfony/lock ### # Choose one of the stores below # postgresql+advisory://db_user:db_password@localhost/db_name LOCK_DSN=flock -###< symfony/lock ### \ No newline at end of file +###< symfony/lock ### diff --git a/config/services.yaml b/config/services.yaml index 2d6a76f94dce138741e2d63ae83a11c1879031d9..8fe95d27c9ad3227eb31035263158d8047fb7571 100644 --- a/config/services.yaml +++ b/config/services.yaml @@ -10,6 +10,8 @@ services: _defaults: autowire: true # Automatically injects dependencies in your services. autoconfigure: true # Automatically registers your services as commands, event subscribers, etc. + bind: + 'int $apiTimeout': '%env(API_TIMEOUT)%' # makes classes in src/ available to be used as services # this creates a service per class whose id is the fully-qualified class name diff --git a/src/Services/WebResetter.php b/src/Services/WebResetter.php index d16211b8655f057624090e325b20d67a06655938..3cf31804850249c52df49cffb82384b9b05ae103 100644 --- a/src/Services/WebResetter.php +++ b/src/Services/WebResetter.php @@ -8,7 +8,8 @@ use Symfony\Contracts\HttpClient\HttpClientInterface; class WebResetter { public function __construct( - private readonly HttpClientInterface $httpClient + private readonly HttpClientInterface $httpClient, + private readonly int $apiTimeout ) { } @@ -23,7 +24,8 @@ class WebResetter 'deviceID' => $webResetter->getAddress(), 'shortPress' => $shortPress, 'apikey' => $webResetter->getServer()->getApikey() - ] + ], + 'timeout' => $this->apiTimeout ] ); if($response->getStatusCode() != 200) { @@ -41,7 +43,8 @@ class WebResetter 'deviceID' => $webResetter->getAddress(), 'shortPress' => $shortPress, 'apikey' => $webResetter->getServer()->getApikey() - ] + ], + 'timeout' => $this->apiTimeout ] ); if($response->getStatusCode() != 200) { @@ -59,7 +62,8 @@ class WebResetter 'deviceID' => $webResetter->getAddress(), 'power' => $powerOn, 'apikey' => $webResetter->getServer()->getApikey() - ] + ], + 'timeout' => $this->apiTimeout ] ); if($response->getStatusCode() != 200) { @@ -78,7 +82,8 @@ class WebResetter 'deviceID' => $webResetter->getAddress(), 'delay' => $delay, 'apikey' => $webResetter->getServer()->getApikey() - ] + ], + 'timeout' => $this->apiTimeout ] ); if($response->getStatusCode() != 200) { @@ -97,7 +102,8 @@ class WebResetter 'deviceID' => $webResetter->getAddress(), 'delay' => $delay, 'apikey' => $webResetter->getServer()->getApikey() - ] + ], + 'timeout' => $this->apiTimeout ] ); if($response->getStatusCode() != 200) { @@ -116,7 +122,8 @@ class WebResetter 'deviceID' => $webResetter->getAddress(), 'newAddress' => $newAddress, 'apikey' => $webResetter->getServer()->getApikey() - ] + ], + 'timeout' => $this->apiTimeout ] ); if($response->getStatusCode() != 200) { @@ -134,7 +141,8 @@ class WebResetter 'json' => [ 'deviceID' => $webResetter->getAddress(), 'apikey' => $webResetter->getServer()->getApikey() - ] + ], + 'timeout' => $this->apiTimeout ] ); if($response->getStatusCode() != 200) {