Sekunden ab, bei Y verlängert sich die Session mit jeder Benutzung private $CredentialToken = false; /** * Create a new controller instance. * * @return void */ public function __construct() { $this->login(); } public function action($func, $para = array()){ try { $Params = array(); // Parameter für die API-Funktion $SoapRequest = new SoapClient('https://kasapi.kasserver.com/soap/wsdl/KasApi.wsdl'); $req = $SoapRequest->KasApi(json_encode(array( 'KasUser' => $this->kas_user, // KAS-User 'KasAuthType' => 'session', // Auth per Sessiontoken 'KasAuthData' => $this->CredentialToken, // Auth-Token 'KasRequestType' => $func, // API-Funktion 'KasRequestParams' => $para // Parameter an die API-Funktion ))); if(isset($req['Response']['ReturnString']) && $req['Response']['ReturnString'] == "TRUE"){ return $req['Response']['ReturnInfo']; } return $req; } // Fehler abfangen und ausgeben catch (SoapFault $fault) { trigger_error(" Fehlernummer: {$fault->faultcode}, Fehlermeldung: {$fault->faultstring}, Verursacher: {$fault->faultactor}, Details: {$fault->detail}", E_USER_ERROR); } } private function login(){ try { $SoapLogon = new SoapClient('https://kasapi.kasserver.com/soap/wsdl/KasAuth.wsdl'); $this->CredentialToken = $SoapLogon->KasAuth(json_encode(array( 'KasUser' => $this->kas_user, 'KasAuthType' => 'sha1', 'KasPassword' => sha1($this->kas_pass), 'SessionLifeTime' => $this->session_lifetime, 'SessionUpdateLifeTime' => $this->session_update_lifetime ))); } // Fehler abfangen und ausgeben catch (SoapFault $fault) { trigger_error("Fehlernummer: {$fault->faultcode}, Fehlermeldung: {$fault->faultstring}, Verursacher: {$fault->faultactor}, Details: {$fault->detail}", E_USER_ERROR); } } }