SDK pro jazyk PHP 5.x

Závislosti

  • Verze PHP minimálně 5.1
  • Dostupná knihovna CURL

Ke stažení

Archiv obsahuje webové stránky s příklady použití, které je možné z tohoto webu spustit. Stačí jej pouze rozbalit do pracovního adresáře Vašeho serveru. Ve složce "examples" je soubor index.php jako vstupní bod.

Obsahuje také autoloader pro dotažení zavislostí při běhu skriptu.

Ukázka připojení přes PHP SDK

/**
  * Příklad použití PHP knihovny pro připojení na Jokiro API
  * - ukázka, vytvoření, získání, stažení a smazání souboru
  */

require_once 'autoloader.php';

try {
    // Vaše přihlašovací údaje
    $jokiroLogin = new Jokiro_Http_Login('klíč účtu', 'už. jméno', 'heslo');

    // Instance api
    $api = new Jokiro_StorageApi($jokiroLogin);

    // Nahrání souboru do složky '/' pod názvem 'jokiro-logo.png'
    $api->createFile(new Jokiro_Item_JokiroFile('/', 'jokiro-logo.png'), 'cesta k souboru...');

    // Získání metadat souboru
    $jokiroStreamingFile = $api->getFile('/jokiro-logo.png');

    // Stažení souboru - příprava streamu
    $stream = fopen('cesta k souboru...', 'w');

    // Stažení souboru
    $jokiroStreamingFile->openStream($stream);
    fwrite($stream, 'w');
    fclose($stream);

    // Přesunutí souboru do koše
    $api->removeFile('/jokiro-logo.png');

    // Smazání koše
    $api->emptyTrash();
} catch (Jokiro_Exception $ex) {
    // Kód chyby    
    $errorCode = $ex->getJokiroCode();
    // Text chyby
    $errorMessage = $ex->getMessage();
}


                        

Vytvoření nového účtu a založení uživatele

/**
  * Příklad použití PHP knihovny pro připojení na Jokiro API
  * - založení nového účtu
  * - přihlášení se do nového účtu
  * - vytvoření nového uživatele
  */

require_once 'autoloader.php';

try {
    // Vaše přihlašovací údaje
    $jokiroLogin = new Jokiro_Http_Login('klíč účtu', 'už. jméno', 'heslo');

    // Instance api
    $api = new Jokiro_StorageApi($jokiroLogin);

    // Super uživatel nového účtu
    $user = new Jokiro_Item_JokiroUser();
    $user->setUserName('yourSubUserName');
    $user->setEmail('yourSubAccount@email.cz');
    $user->setPassword('yourSubPassword');

    // Vytvoření nového podúčtu - vrací klíč vytvořeného účtu
    $newAccountKey = $api->createAccount('yourSubAccount@email.cz', $user);

    // Přihlášení se uživatelem hlavního účtu do nového podúčtu
    // Přihlašovací údaje super uživatele hlavního účtu
    // $newAccountKey - klíč účtu pod kterým bude přihlášen
    $jokiroLogin = new Jokiro_Http_Login('klíč účtu', 'už. jméno', 'heslo', $newAccountKey);
    $api = new Jokiro_StorageApi($jokiroLogin);

    // $api nyní pracuje s podřízeným účtem

    // Listování obsahu podřízeného účtu
    $api->getList('/');

    // Nový uživatel v podúčtu
    $user = new Jokiro_Item_JokiroUser();
    $user->setUserName('userName');
    $user->setEmail('userName@email.cz');
    $user->setPassword('password');

    // Vytvoření nového uživatele v podúčtu
    $api->createUser($user);
} catch (Jokiro_Exception $ex) {
    // Kód chyby    
    $errorCode = $ex->getJokiroCode();
    // Text chyby
    $errorMessage = $ex->getMessage();
}


                        

SDK pro jazyk Java / Android

Závislosti knihovny jsou součástí archivu

  • Apache HTTP klient
  • Apache commons
  • Jackson JSON procesor

Ukázka připojení přes JAVA / Android SDK

try {
    /**
      * Příklad použití Java/Android knihovny pro připojení na Jokiro API
      * - ukázka, vytvoření, získání, stažení a smazání souboru
      */

    // Jokiro ID - Vaše přihlašovací údaje
    JokiroLogin login = new JokiroLogin("klíč účtu", "už. jméno", "heslo");

    // Instance api
    JokiroStorageApi api = new JokiroStorageApi(login);

    // Nahrání souboru do složky "/" pod názvem "soubor.txt"
    JokiroFile jokiroFile = new JokiroFile("/", "soubor.txt");
    api.create(jokiroFile, new File("/cesta/k/souboru"));

    // Získání metadat souboru
    JokiroStreamingFile file = api.getFile("/soubor.txt");

    // Stažení souboru
    InputStream fileStream = file.openStream();
    // Stream pro získání obsahu souboru
    
    // Přesunutí souboru do koše
    api.removeFile("/soubor.txt");

    // Smazání koše
    api.emptyTrash();
} catch(JokiroException ex) {
    // Kód chyby
    String code = ex.getCode();
    // Text chyby
    String message = ex.getMessage();
}
                        

Ukázka asynchronní komunikace v JAVA / Android SDK

/**
  * Ukázka přihlášení se na asynchronní komunikaci pro knihovny Java/Android
  * - ukázka připojení a sledování událostí uvnitř úložiště
  * - při otevření komunikace s úložištěm jsou automaticky odfiltrovány 
  *   události vytvořené právě touto instací Jokiro API.
  *   Pokud je tedy instance API přihlášena k asynchronní komunikaci, 
  *   události jí vytvořené nebudou hlášeny.
  */

try {    
    // Jokiro ID - Vaše přihlašovací údaje
    JokiroLogin login = new JokiroLogin("klíč účtu", "uživatelské jméno", "heslo");

    // Instance api
    JokiroStorageApi api = new JokiroStorageApi(login);

    // Přihlášení na asynchronní komunikaci
    AsyncSubscription subscription = api.subscribe(new EventHandler() {

        @Override
        public void onCreate(JokiroEvent event) {
            /* Objekt event a jeho vlastnosti */

            // Klíč komunikace pro tuto instanci Jokiro API
            final String clientKey = event.getClientKey();
            // Unikátní ID objektu
            final String id = event.getId();
            // Název objektu
            final String name = event.getName();
            // Cesta na objekt
            final String path = event.getPath();

            // Událost vytvoření souboru/složky
            logger.log(Level.INFO, "Event raised at path {0}", event.getPath());
        }

        @Override
        public void onUpdate(JokiroEvent event) {
            // Událost změny souboru/složky
            logger.log(Level.INFO, "Event raised at path {0}", event.getPath());
        }

        @Override
        public void onMove(JokiroEvent event) {
            // Událost přesunutí souboru/složky
            logger.log(Level.INFO, "Event raised at path {0}", event.getPath());
        }

        @Override
        public void onRemove(JokiroEvent event) {
            // Událost odebrání souboru/složky
            logger.log(Level.INFO, "Event raised at path {0}", event.getPath());
        }

        @Override
        public void onClose() {
            // Událost ukončení spojení, jak ze strany serveru tak klienta
            logger.log(Level.INFO, "Connection closed");
        }

    });

    /* Metody na objektu AsyncSubscription */

    // Odeslání požadavku ping na server
    subscription.ping();

    // Ukončení spojení
    subscription.close();
} catch(JokiroException ex) {
    // Kód chyby
    String code = ex.getCode();
    // Text chyby
    String message = ex.getMessage();
}