/laravel-amocrm

An amoCRM bridge for Laravel 5, 6 and 7

Primary LanguagePHPMIT LicenseMIT

Laravel AmoCrm

Build Status Latest Stable Version License Code Coverage Scrutinizer Code Quality

Laravel AmoCrm это ServiceProvider и Facade для Laravel 5 и выше предоставляющие интеграцию с API amoCRM используя библиотеку amocrm-php.

Установка

Используя Composer, в корнерой директории проекта.

$ composer require dotzero/laravel-amocrm

Настройка

Если вы используете Laravel 5.5 и выше, регистрировать providers и aliases не нужно.

Для Laravel 5.4.* и ниже: после установки необходимо добавить AmoCrmServiceProvider в секцию providers файла config/app.php.

'providers' => [
    // ...
    Dotzero\LaravelAmoCrm\AmoCrmServiceProvider::class,
],

Для использования Facade, необходимо добавить AmoCrm в секцию aliases файла config/app.php.

'aliases' => [
    // ...
    'AmoCrm' => Dotzero\LaravelAmoCrm\Facades\AmoCrm::class,
],

Laravel AmoCrm требует указания параметров подключения к API amoCRM. Указать их можно в файле конфигурации. Для этого необходимо опубликовать файл конфигурации.

$ php artisan vendor:publish

Эта команда создаст файл config/amocrm.php в котором можно будет указать эти параметры. Кроме того можно использовать переменные окружения используя файл .env.

Использование

use Dotzero\LaravelAmoCrm\AmoCrmManager;

Route::get('/', function (AmoCrmManager $amocrm) {
    try {

        /** @var \AmoCRM\Client $client */
        $client = $amocrm->getClient();
        $account = $client->account;

        // или

        /** @var \AmoCRM\Models\Account $account */
        $account = $amocrm->account;

        dd($account->apiCurrent());

    } catch (\Exception $e) {
        abort(400, $e->getMessage());
    }
});

Если вы предопочитаете использовать Facade, то следующий пример показывает как это можно сделать.

use Dotzero\LaravelAmoCrm\Facades\AmoCrm;

Route::get('/', function () {

    /** @var \AmoCRM\Client $client */
    $client = AmoCrm::getClient();

    /** @var \AmoCRM\Helpers\Fields $fields */
    $fields = AmoCrm::getFields();

    /** @var \AmoCRM\Helpers\getB2BFamily $fields */
    $b2bfamily = AmoCrm::getB2BFamily();

});

Документация

Смотреть документацию к библиотеке amocrm-php.

Лицензия

Библиотека доступна на условиях лицензии MIT: http://www.opensource.org/licenses/mit-license.php