ÿØÿà JFIF ÿÛ „ ( %"1"%)+...383,7(-.-
![]() Server : Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/7.4.20 System : Linux st2.domain.com 3.10.0-1127.10.1.el7.x86_64 #1 SMP Wed Jun 3 14:28:03 UTC 2020 x86_64 User : apache ( 48) PHP Version : 7.4.20 Disable Function : NONE Directory : /var/www/html/adimi/application/libraries/nexmo/vendor/nexmo/client/src/Account/ |
<?php namespace Nexmo\Account; use Nexmo\Client\ClientAwareInterface; use Nexmo\Client\ClientAwareTrait; use Nexmo\Network; use Psr\Http\Message\ResponseInterface; use Zend\Diactoros\Request; use Nexmo\Client\Exception; class Client implements ClientAwareInterface { use ClientAwareTrait; public function getSmsPrice($country) { $body = $this->makePricingRequest($country, 'sms'); $smsPrice = new SmsPrice(); $smsPrice->jsonUnserialize($body); return $smsPrice; } public function getVoicePrice($country) { $body = $this->makePricingRequest($country, 'voice'); $voicePrice = new VoicePrice(); $voicePrice->jsonUnserialize($body); return $voicePrice; } protected function makePricingRequest($country, $pricingType) { $queryString = http_build_query([ 'country' => $country ]); $request = new Request( \Nexmo\Client::BASE_REST . '/account/get-pricing/outbound/'.$pricingType.'?'.$queryString, 'GET', 'php://temp' ); $response = $this->client->send($request); $rawBody = $response->getBody()->getContents(); if ($rawBody === '') { throw new Exception\Server('No results found'); } return json_decode($rawBody, true); } public function getBalance() { $request = new Request( \Nexmo\Client::BASE_REST . '/account/get-balance', 'GET', 'php://temp' ); $response = $this->client->send($request); $rawBody = $response->getBody()->getContents(); if ($rawBody === '') { throw new Exception\Server('No results found'); } $body = json_decode($rawBody, true); $balance = new Balance($body['value'], $body['autoReload']); return $balance; } public function topUp($trx) { $body = [ 'trx' => $trx ]; $request = new Request( \Nexmo\Client::BASE_REST . '/account/top-up' ,'POST' , 'php://temp' , ['content-type' => 'application/x-www-form-urlencoded'] ); $request->getBody()->write(http_build_query($body)); $response = $this->client->send($request); if($response->getStatusCode() != '200'){ throw $this->getException($response, $application); } } protected function getException(ResponseInterface $response, $application = null) { $body = json_decode($response->getBody()->getContents(), true); $status = $response->getStatusCode(); if($status >= 400 AND $status < 500) { $e = new Exception\Request($body['error_title'], $status); } elseif($status >= 500 AND $status < 600) { $e = new Exception\Server($body['error_title'], $status); } else { $e = new Exception\Exception('Unexpected HTTP Status Code'); } return $e; } }