!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/vonage/client-core/src/Conversation/   drwxr-xr-x
Free 28.48 GB of 117.98 GB (24.14%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


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

namespace Vonage\Conversation;

use 
Vonage\Client\APIClient;
use 
Vonage\Client\APIResource;
use 
Vonage\Conversation\ConversationObjects\EventRequest;
use 
Vonage\Conversation\ConversationObjects\Conversation;
use 
Vonage\Conversation\ConversationObjects\CreateConversationRequest;
use 
Vonage\Conversation\ConversationObjects\CreateMemberRequest;
use 
Vonage\Conversation\ConversationObjects\Event;
use 
Vonage\Conversation\ConversationObjects\Member;
use 
Vonage\Conversation\ConversationObjects\UpdateConversationRequest;
use 
Vonage\Conversation\ConversationObjects\UpdateMemberRequest;
use 
Vonage\Conversation\Filter\ListConversationFilter;
use 
Vonage\Conversation\Filter\ListEventsFilter;
use 
Vonage\Conversation\Filter\ListMembersFilter;
use 
Vonage\Conversation\Filter\ListUserConversationsFilter;
use 
Vonage\Entity\Hydrator\ArrayHydrator;
use 
Vonage\Entity\IterableAPICollection;

class 
Client implements APIClient
{
    public function 
__construct(protected APIResource $api)
    {
    }

    public function 
getAPIResource(): APIResource
    
{
        return 
$this->api;
    }

    public function 
listConversations(
        ?
ListConversationFilter $conversationFilter null
    
): IterableAPICollection {
        if (!
$conversationFilter) {
            
$conversationFilter = new ListConversationFilter();
        }

        
$response $this->getApiResource()->search($conversationFilter);
        
$response->setHasPagination(false);
        
$response->setNaiveCount(true);

        
$hydrator = new ArrayHydrator();
        
$hydrator->setPrototype(new Conversation());
        
$response->setHydrator($hydrator);

        return 
$response;
    }

    public function 
createConversation(CreateConversationRequest $createConversation): Conversation
    
{
        
$response $this->getApiResource()->create($createConversation->toArray());
        
$conversation = new Conversation();
        
$conversation->fromArray($response);

        return 
$conversation;
    }

    public function 
getConversationById(string $id): Conversation
    
{
        
$response $this->getApiResource()->get($id);
        
$conversation = new Conversation();
        
$conversation->fromArray($response);

        return 
$conversation;
    }

    public function 
updateConversationById(string $idUpdateConversationRequest $updateRequest): Conversation
    
{
        
$response $this->getApiResource()->update($id$updateRequest->toArray());
        
$conversation = new Conversation();
        
$conversation->fromArray($response);

        return 
$conversation;
    }

    public function 
deleteConversationById(string $id): bool
    
{
        
$this->getApiResource()->delete($id);

        return 
true;
    }

    public function 
listUserConversationsByUserId(
        
string $userId,
        ?
ListUserConversationsFilter $filter null
    
): IterableAPICollection {
        
$api = clone $this->getAPIResource();
        
$api->setBaseUrl('https://api.nexmo.com/v1/users');
        
$response $api->search($filter'/' $userId '/conversations');
        
$response->setHasPagination(true);
        
$response->setNaiveCount(true);

        
$hydrator = new ArrayHydrator();
        
$hydrator->setPrototype(new Conversation());
        
$response->setHydrator($hydrator);

        return 
$response;
    }

    public function 
listMembersByConversationId(
        
string $conversationId,
        ?
ListMembersFilter $filter null
    
): IterableAPICollection {
        
$api = clone $this->getAPIResource();
        
$api->setBaseUrl('https://api.nexmo.com/v1/users/');
        
$api->setCollectionName('members');
        
$response $api->search($filter$conversationId '/members');
        
$response->setHasPagination(true);
        
$response->setNaiveCount(true);

        
$hydrator = new ArrayHydrator();
        
$hydrator->setPrototype(new Member());
        
$response->setHydrator($hydrator);

        return 
$response;
    }

    public function 
createMember(CreateMemberRequest $createMemberRequeststring $conversationId): ?array
    {
        return 
$this->getApiResource()->create($createMemberRequest->toArray(), '/' $conversationId '/members');
    }

    public function 
getMyMemberByConversationId(string $id): Member
    
{
        
$response $this->getApiResource()->get($id '/members/me');
        
$member = new Member();
        
$member->fromArray($response);

        return 
$member;
    }

    public function 
getMemberByConversationId(string $memberIdstring $conversationId): Member
    
{
        
$response $this->getApiResource()->get($conversationId '/members/' $memberId);
        
$member = new Member();
        
$member->fromArray($response);

        return 
$member;
    }

    public function 
updateMember(UpdateMemberRequest $updateMemberRequest): Member
    
{
        
$response $this->getAPIResource()->update(
            
$updateMemberRequest->getConversationId() . '/members/' $updateMemberRequest->getMemberId(),
            
$updateMemberRequest->toArray()
        );

        
$member = new Member();
        
$member->fromArray($response);

        return 
$member;
    }

    public function 
deleteMember(string $memberIdstring $conversationId): bool
    
{
        
$this->getApiResource()->delete($conversationId '/members/' $memberId);

        return 
true;
    }

    public function 
createEvent(EventRequest $event): Event
    
{
        
$response $this->getAPIResource()->create($event->toArray(), '/' $event->getConversationId() . '/events');

        
$member = new Event();
        
$member->fromArray($response);

        return 
$member;
    }

    public function 
listEvents(string $conversationIdListEventsFilter $filter): IterableAPICollection
    
{
        
$response $this->getAPIResource()->search($filter'/' $conversationId '/events');
        
$response->setHasPagination(false);
        
$response->setNaiveCount(true);
        
$response->setHalNoCollection(true);

        return 
$response;
    }

    public function 
getEventById(string $eventIdstring $conversationId): Event
    
{
        
$response $this->getApiResource()->get($conversationId '/events/' $eventId);
        
$member = new Event();
        
$member->fromArray($response);

        return 
$member;
    }

    public function 
deleteEventById(string $eventId$conversationId): bool
    
{
        
$this->getApiResource()->delete($conversationId '/events/' $eventId);

        return 
true;
    }
}

:: 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.0051 ]--