15web / sailplay-sdk
A PHP SDK for SailPlay HTTP API (https://sailplay.ru/)
dev-main
2022-08-25 09:58 UTC
Requires
- php: >=7.2.5
- ext-json: *
- guzzlehttp/guzzle: ^7.4
- psr/http-client: ^1.0
- psr/http-factory: ^1.0
- psr/http-message: ^1.0
- psr/log: ^1.1.4
- psr/simple-cache: ^1.0
- symfony/cache: ^5.4
- symfony/property-access: ^5.4
- symfony/serializer: ^5.4
- webmozart/assert: ^1.10
Requires (Dev)
- friendsofphp/php-cs-fixer: ^v3.4
- phpstan/phpstan: ^1.5
- phpstan/phpstan-strict-rules: ^1.1
- phpunit/phpunit: ^8.5
- slevomat/coding-standard: ^7.1
- squizlabs/php_codesniffer: ^3.6
- symfony/dotenv: ^5.4
This package is auto-updated.
Last update: 2024-10-25 14:32:06 UTC
README
SDK на языке PHP для платформы автоматизации маркетинга — https://sailplay.ru.
Ускорит внедрение функциональности Sailplay в ваш продукт.
- Не нужно думать о деталях запроса (формирование url, заголовков, query string и т.п.).
- Все запросы и ответы являются типизированными классами.
- Для создания и использования классов будут работать подсказки IDE.
- Будет работать проверка типов и валидация входных параметров.
- Есть логирование для отладки и обработка ошибок. Не нужно писать код для проверки тела ответа.
- Из коробки работает кеширование токена, которое рекомендовано Sailplay для использования в API.
Установка
composer require 15web/sailplay-sdk
Использование
<?php require_once 'vendor/autoload.php'; try { // отправляем запрос на получение токена $loginResponse = \Studio15\SailPlay\SDK\SailPlayApi::login( $storeDepartmentId = 12345, $storeDepartmentKey = 12345678, $pinCode = 1234 ); // при наличии в ответе ошибки будет выброшено соответствующее исключение } catch (\Studio15\SailPlay\SDK\Api\Login\AuthErrorException $authErrorException) { echo "Ошибка аутентификации: {$authErrorException->getMessage()}"; } // ответ - это объект с геттерами доступных полей $token = $loginResponse->getToken(); // отправляем запрос на получение информации о клиенте $userInfoResponse = \Studio15\SailPlay\SDK\SailPlayApi::usersInfo( $token, $storeDepartmentId = 12345, $userPhone = '79991234567' ); echo $userInfoResponse->getEmail();
Разработка
Сборка образа PHP (обязательно перед всеми операциями с run.bash)
./bin/docker_build.bash
Установка зависимостей
./bin/run.bash composer install
Запуск PHP
./bin/run.bash php tests/functional/Users/info.php
Функциональные тесты
cp tests/functional/.env.dist tests/functional/.env ./bin/run.bash php tests/functional/Users/info.php
Установка git hooks
./bin/hooks.bash
Copyright and license
Copyright © Studio 15, 2012 - Present.
Code released under the MIT license.
We use BrowserStack for cross browser testing.
❤️