Componette

Componette

download-cloud-line composer require tomas-kulhanek/czech-data-box

PHP knihovna pro komunikaci s Informačním systémem datových schránek (ISDS) Ministerstva vnitra

DEV branch workflows Latest Stable Version Total Downloads Monthly Downloads License

POZOR!! Pokud implementujete napojení na ISDS, je potřeba aby jste se řídili dle PROVOZNÍHO ŘÁDU

Instalace

Composer

Pro instalaci balíčku je nutné jej instalovat skrze composer.

composer require tomas-kulhanek/czech-data-box

Dále je potřeba využít nějakého klienta. Buď je možné využít Guzzle nebo Symfony Http client

composer require tomas-kulhanek/czech-data-box guzzlehttp/guzzle:^7.0
composer require tomas-kulhanek/czech-data-box symfony/http-client

Pokud je potřeba implementovat vlastního klienta, je potřeba implementovat rozhraní TomasKulhanek\CzechDataBox\Provider\ClientProviderInterface a zajistit správné nastavení hlaviček nebo SSL klientských certifikátů.

Popis

Tato knihovna slouží k základní komunikaci s Informačním systémem datových scrhánek ISDS nebo ISDS test

Veškeré ukázky, jak pracovat s knihovnou naleznete v examples. Jediná podmínka ke zprovoznění je ta, že musíte vlastnit své přístupové údaje.

Základní použití

Pro každou operaci je potřebné zadat přístupové údaje

<?php
$account = new \TomasKulhanek\CzechDataBox\Account();
try {
    $account->setPassword('mojeTajneHeslo')
        ->setLoginName('mujLogin')
            ->setLoginType($account::LOGIN_NAME_PASSWORD)
            ->setProduction(false);
} catch (\TomasKulhanek\CzechDataBox\Exception\BadOptionException $exception) {
    die($exception->getMessage());
}

Prostředí ke kterému se připojuje je definováno pomocí \TomasKulhanek\CzechDataBox\Account::isProduction()

Využití s Symfony HTPP client

Instalace

composer require tomas-kulhanek/czech-data-box symfony/http-client

Využitví

$serializer = \TomasKulhanek\Serializer\SerializerFactory::create();
$guzzleProvider = \TomasKulhanek\CzechDataBox\Provider\SymfonyClientProvider::create();
$connector = new \TomasKulhanek\CzechDataBox\Connector($serializer, $guzzleProvider);

Využití s Guzzle 7

Instalace

composer require tomas-kulhanek/czech-data-box guzzlehttp/guzzle:^7.0

Využitví

$serializer = \TomasKulhanek\Serializer\SerializerFactory::create();
$guzzleProvider = \TomasKulhanek\CzechDataBox\Provider\GuzzleClientProvider::create();
$connector = new \TomasKulhanek\CzechDataBox\Connector($serializer, $guzzleProvider);

Pomoc a řešní chyb

V případě že potřebujete poradit, nebo při implementaci Vám třída zobrazuje chybu vytvořte prosím nové Issues. Základní pomoc je poskytována zcela zdarma pomocí Issues.

Odkazy

Žádosti o zřízení datové schránky

Produkční prostředí

Testovací prostředí

Časté otázky

Proč CURL a ne SoapClient?

Důvod je jednoduchý. Jelikož PHP nedokázalo správně zpracovávat pomocí ClassMap request/response viz bug. Z toho důvodu, jsme zvolili využití curl a serializeru. Problém byl například v CreateMessage a proto jsme na internetu nikde nenašli knihovnu, která by umožňovala odesílání datových zpráv.

  • v4.0.3 v4.0.3

  • v4.0.2 v4.0.2

  • v4.0.1 v4.0.1

  • v4.0.0 v4.0.0

  • v3.0.0 v3.0.0

    BC BREAKS
    Byly odebrány všechny konektory a byl vytvořen jen jeden. Dále byla odebrána celá závislost na Symfony HTTP a je potřeba si buď vytvořit implementaci klienta vytvořit, nebo použít provider pro Symfony HTTP nebo Guzzle, které je součástí

  • v2.0.0 v2.0.0

    Došlo ke změně Account objektu a odebrání všech enum

  • v1.0.1 v1.0.1

  • v1.0.0 v1.0.0

bar-chart-fill

Statistics

download-cloud-fill
2454
star-fill
3
bug-fill
5
flashlight-fill
5d
price-tag-2-line

Badges

guide-fill

Dependencies

php (>=7.4)
ext-xml (*)
ext-mbstring (*)
ext-curl (*)
ext-openssl (*)
ext-dom (*)
Componette Componette felix@nette.org