wppconnect-team/wppconnect-laravel-client
最新稳定版本:1.0.1
Composer 安装命令:
composer require wppconnect-team/wppconnect-laravel-client
包简介
A simple API with Guzzle wrapper, providing easy access to wppconnect's endpoints.
README 文档
README
Wppconnect Laravel Client
Uma API simples com empacotador Guzzle, fornecendo acesso fácil aos endpoints do WPPConnect Server.
Nossos canais online
Requisitos
- PHP 7.4 ou superior.
- Laravel 8.x ou superior.
Intalação - Laravel
Baixe o pacote com o Composer (Packagist), utilizando o seguinte comando:
$ composer require wppconnect-team/wppconnect-laravel-client
Registre o WppconnectServiceProvider nos providers dentro de config/app.php:
WPPConnectTeam\Wppconnect\WppconnectServiceProvider::class
Publique os arquivos do vendo (arquivo de configuração):
$ php artisan vendor:publish
Opcional
Registre o facade em config/app.php:
'Wppconnect' => WPPConnectTeam\Wppconnect\Facades\Wppconnect::class
Configuração
Configuração aplicada a todas as solicitações criadas pela API.
Exemplo:
'defaults' => [ /** * URL do WPPConnect Server */ 'base_uri' => 'http://192.168.0.39:21465', /** * Secret Key * Veja: https://github.com/wppconnect-team/wppconnect-server#secret-key */ 'secret_key' => 'MYKeYPHP' ]
Uso
Utilize este pacote sem qualquer configuração com o Wppconnect facade em seu controlador, ou, injete-o na classe onde o cliente se faz necessário:
/** * @var RequestInterface */ protected $client; /** * @param Wppconnect $client */ public function __construct(Wppconnect $client) { $this->client = $client; }
Exemplo com o Facade:
class WppconnectController extends Controller { protected $url; protected $key; protected $session; /** * __construct function */ public function __construct() { $this->url = config('wppconnect.defaults.base_uri'); $this->key = config('wppconnect.defaults.secret_key'); $this->session = "mySession"; } public function index(){ #Function: Generated Token # /api/:session/generate-token //Session::flush(); if(!Session::get('token') and !Session::get('session')): Wppconnect::make($this->url); $response = Wppconnect::to('/api/'.$this->session.'/'.$this->key.'/generate-token')->asJson()->post(); $response = json_decode($response->getBody()->getContents(),true); if($response['status'] == 'success'): Session::put('token', $response['token']); Session::put('session', $response['session']); endif; endif; #Function: Start Session # /api/:session/start-session if(Session::get('token') and Session::get('session') and !Session::get('init')): Wppconnect::make($this->url); $response = Wppconnect::to('/api/'.Session::get('session').'/start-session')->withHeaders([ 'Authorization' => 'Bearer '.Session::get('token') ])->asJson()->post(); $response = json_decode($response->getBody()->getContents(),true); Session::put('init', true); endif; } }
#Function: Check Connection Session # /api/:session/check-connection-session if(Session::get('token') and Session::get('session') and Session::get('init')): Wppconnect::make($this->url); $response = Wppconnect::to('/api/'. Session::get('session').'/check-connection-session')->withHeaders([ 'Authorization' => 'Bearer '.Session::get('token') ])->asJson()->get(); $response = json_decode($response->getBody()->getContents(),true); dd($response); endif;
#Function: Close Session # /api/:session/close-session if(Session::get('token') and Session::get('session') and Session::get('init')): Wppconnect::make($this->url); $response = Wppconnect::to('/api/'. Session::get('session').'/close-session')->withHeaders([ 'Authorization' => 'Bearer '.Session::get('token') ])->asJson()->post(); $response = json_decode($response->getBody()->getContents(),true); dd($response); endif;
#Function: Send Message # /api/:session/send-message if(Session::get('token') and Session::get('session') and Session::get('init')): Wppconnect::make($this->url); $response = Wppconnect::to('/api/'. Session::get('session').'/send-message')->withBody([ 'phone' => '5500000000000', 'message' => 'Opa, funciona mesmo!' ])->withHeaders([ 'Authorization' => 'Bearer '.Session::get('token') ])->asJson()->post(); $response = json_decode($response->getBody()->getContents(),true); dd($response); endif;
#Function: Send File Base64 # /api/:session/send-file-base64 if(Session::get('token') and Session::get('session') and Session::get('init')): Wppconnect::make($this->url); $response = Wppconnect::to('/api/'. Session::get('session').'/send-file-base64')->withBody([ 'phone' => '5500000000000', 'base64' => 'data:image/jpg;base64,' . base64_encode(file_get_contents(resource_path('/img/xpto.jpg'))) ])->withHeaders([ 'Authorization' => 'Bearer '.Session::get('token') ])->asJson()->post(); $response = json_decode($response->getBody()->getContents(),true); dd($response); endif;
Debug
Usar debug(bool|resource) antes de enviar uma solicitação para ativar o depurador do Guzzle. Para mais informações acesse a documentação.
O debug é desligado após cada solicitação, se você precisar depurar várias solicitações enviadas sequencialmente, será necessário ativar a depuração para todas elas.
Exemplo
$logFile = './client_debug_test.log'; $logFileResource = fopen($logFile, 'w+'); $this->client->debug($logFileResource)->to('post')->withBody([ 'foo' => 'bar' ])->asJson()->post(); fclose($logFileResource);
Os logs serão salvos no arquivo client_debug_test.log.
Postman
Acesse o Postman Collection do WPPConnect com todos os endpoints.
统计信息
- 总下载量: 3.06k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 39
- 点击次数: 1
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2021-04-19