Package Data | |
---|---|
Maintainer Username: | redpic |
Maintainer Contact: | aleksey.fortuna@gmail.com (Alexei Fortuna) |
Package Create Date: | 2015-08-04 |
Package Last Update: | 2015-08-04 |
Language: | PHP |
License: | MIT |
Last Refreshed: | 2025-04-23 15:03:57 |
Package Statistics | |
---|---|
Total Downloads: | 19 |
Monthly Downloads: | 0 |
Daily Downloads: | 0 |
Total Stars: | 1 |
Total Watchers: | 1 |
Total Forks: | 1 |
Total Open Issues: | 0 |
antigate.com API Laravel 5.1 package
Установите пакет: composer require redpic/antigate
Добавьте сервис-провайдер в config/app.php
:
'providers' => [
// ...
Redpic\Antigate\AntigateServiceProvider::class,
];
Опубликуйте конфиг: php artisan vendor:publish
и впишите в него токен доступа: config/antigate.php
Создайте два слушателя событий:
php artisan make:listener test --event CaptchaWasRecognized
php artisan make:listener test --event CaptchaWasNotRecognized
Приведите их к виду:
app/Listeners/CaptchaWasRecognizedListener.php
:
<?php
namespace App\Listeners;
use Redpic\Antigate\Events\CaptchaWasRecognized;
use Redpic\Antigate\Jobs\RecognizeCaptcha;
class CaptchaWasRecognizedListener
{
public function handle(CaptchaWasRecognized $event)
{
$event->captcha->getKey(); // Тут текст разгаданной капчи
}
}
app/Listeners/CaptchaWasNotRecognizedListener.php
:
<?php
namespace App\Listeners;
use Redpic\Antigate\Events\CaptchaWasNotRecognized;
use Redpic\Antigate\Jobs\RecognizeCaptcha;
class CaptchaWasNotRecognizedListener
{
public function handle(CaptchaWasNotRecognized $event)
{
$event->captcha; // Не разгаданная капча
$event->exception; // Исключение вызванное во время работы
/*
Если в этом месте вызвать какое то исключение,
то задание по разгадываю этой капчи снова добавится в очередь
*/
}
}
Зарегистрируйте слушатели app/Providers/EventServiceProvider.php
:
protected $listen = [
//...
'Redpic\Antigate\Events\CaptchaWasRecognized' => [
'App\Listeners\CaptchaWasRecognizedListener',
],
'Redpic\Antigate\Events\CaptchaWasNotRecognized' => [
'App\Listeners\CaptchaWasNotRecognizedListener',
],
];
Добавление задания из контроллера выглядит примерно так:
$captcha = (new Captcha)->setImageByUrl('http://ПУТЬ_К_КАПЧЕ');
$this->dispatch(new RecognizeCaptcha($captcha));