diff --git a/freebox/api/v3/services/login/Authorize.php b/freebox/api/v3/services/login/Authorize.php index b28d2c8..20cc859 100644 --- a/freebox/api/v3/services/login/Authorize.php +++ b/freebox/api/v3/services/login/Authorize.php @@ -43,9 +43,9 @@ class Authorize extends Service { $this->application->loadAppToken(); if( ! $this->application->haveAppToken()){ - $this->ask_authorization(); + $this->askAuthorization(); while( in_array( $this->status, [self::STATUS_UNKNOWN, self::STATUS_PENDING])){ - $this->get_authorization_status(); + $this->getAuthorizationStatus(); if( $this->status == self::STATUS_GRANTED){ $this->application->setAppToken( $this->app_token); $this->application->saveAppToken(); @@ -68,7 +68,7 @@ class Authorize extends Service { * Contact the freebox and ask for App auth * @throws \Exception */ - public function ask_authorization(){ + public function askAuthorization(){ $rest = $this->getService( self::API_LOGIN_AUTHORIZE); $rest->POST([ 'app_id' => $this->application->getId(), @@ -77,29 +77,21 @@ class Authorize extends Service { 'device_name' => gethostname(), ]); - $response = $rest->getCurlResponse(); - if( ! $rest->getSuccess()){ - $this->application->getLogger()->addCritical( 'Freebox Error : '. $response['error_code'] .' - '. $response['msg']); - throw new \Exception( $response['msg'], $response['error_code']); - } + $this->app_token = $rest->getResult()['app_token']; + $this->track_id = $rest->getResult()['track_id']; $this->application->getLogger()->addInfo( 'Authorization send to Freebox. Waiting for response...'); - - $this->app_token = $response['result']['app_token']; - $this->track_id = $response['result']['track_id']; } /** * @throws \Exception */ - public function get_authorization_status(){ + public function getAuthorizationStatus(){ $rest = $this->getService( self::API_LOGIN_AUTHORIZE . $this->track_id); $rest->GET(); - $result = $rest->getResult(); - - $this->status = $result['status']; - $this->challenge = $result['challenge']; + $this->status = $rest->getResult()['status']; + $this->challenge = $rest->getResult()['challenge']; $this->application->getLogger()->addInfo( 'Freebox authorization status : '. $this->status); } diff --git a/freebox/api/v3/services/login/Session.php b/freebox/api/v3/services/login/Session.php index ed4d3eb..d2ced5a 100644 --- a/freebox/api/v3/services/login/Session.php +++ b/freebox/api/v3/services/login/Session.php @@ -10,15 +10,16 @@ use alphayax\freebox\utils\Service; */ class Session extends Service { - /// APIs services const API_LOGIN = '/api/v3/login/'; const API_LOGIN_SESSION = '/api/v3/login/session/'; /** @var string */ private $challenge = ''; + /** @var string Password Salt */ private $password_salt = ''; + /** @var bool Is the user logged */ private $logged_in = false; /** @var array */ @@ -30,30 +31,25 @@ class Session extends Service { /** * @throws \Exception */ - public function ask_login_status(){ + public function askLoginStatus(){ $rest = $this->getService( static::API_LOGIN); $rest->GET(); - $result = $rest->getCurlResponse()['result']; - - $this->logged_in = $result['logged_in']; - $this->challenge = $result['challenge']; - $this->password_salt = $result['password_salt']; + $this->logged_in = $rest->getResult()['logged_in']; + $this->challenge = $rest->getResult()['challenge']; + $this->password_salt = $rest->getResult()['password_salt']; } /** * @throws \Exception */ - public function create_session(){ + public function createSession(){ $rest = $this->getService( static::API_LOGIN_SESSION); $rest->POST([ 'app_id' => $this->application->getId(), 'password' => hash_hmac( 'sha1', $this->challenge, $this->application->getAppToken()), ]); - if( ! $rest->getSuccess()){ - throw new \Exception( $rest->getCurlResponse()['error_code'] .' : '. $rest->getCurlResponse()['msg']); - } $this->session_token = $rest->getResult()['session_token']; $this->permissions = $rest->getResult()['permissions']; } diff --git a/freebox/utils/Application.php b/freebox/utils/Application.php index 1ac2549..ac3c92f 100644 --- a/freebox/utils/Application.php +++ b/freebox/utils/Application.php @@ -84,8 +84,8 @@ class Application { */ public function openSession(){ $Login = new services\login\Session( $this); - $Login->ask_login_status(); - $Login->create_session(); + $Login->askLoginStatus(); + $Login->createSession(); $this->permissions = $Login->getPermissions(); $this->session_token = $Login->getSessionToken();