<?php /** * * @author nTechnology.pl <contact [at] ntechnology [dot] pl> * @copyright Copyright (c) 2009, nTechnology.pl * */ class Ivona { /** * Konstruktor * * @param string $email * @param string $haslo * @param string $url */ function __construct($email, $haslo, $url, $glos) { $this->glos = $glos; $this->email = $email; $this->haslo = $haslo; } function PobierzToken() { $token = $this->client->__soapCall('getToken', $input); // pobierz token. } /** * Dodanie nowego nagrania. * * @param string $nazwa * @param string $tresc * * @return string */ function DodajNagranie($nazwa, $tresc) { $data = $this->PobierzToken(); 'token' => $data['token'], 'md5' => $data['md5'], 'name' => $nazwa, 'text' => $tresc, 'voiceId' => $this->glos, ); $licencja = $this->client->__soapCall('addUtterance', $input); $plik = $this->ZakupLicencje($licencja); return $plik['url']; // zwraca ścieżkę do pliku audio } /** * Zakup licencje * * @param integer $id * * @return array */ function ZakupLicencje($id) { $data = $this->PobierzToken(); 'token' => $data['token'], 'md5' => $data['md5'], 'utteranceId' => $id, 'downloadType' => 'many', 'encoder_name' => 'mp3/22050', 'license' => 'free', 'unlimitedClicks' => 'yes', ); return $this->client->__soapCall('buyLicense', $LicencjaInput); } /** * Pobierz wszystkie pliki audio. * * @return array */ function PokazPliki() { $data = $this->PobierzToken(); 'token' => $data['token'], 'md5' => $data['md5'], ); return $this->client->__soapCall('listUtterances', $input); } /** * Usuń plik. * * @param integer $id */ function UsunPlik($id) { $data = $this->PobierzToken(); 'token' => $data['token'], 'md5' => $data['md5'], 'utteranceId' => $id, ); return $this->client->__soapCall('deleteUtterance', $input); } } ?>
Prosta klasa do obsługi API: http://www.ivona.com/online/.
Przykładowe użycie:
<?php $ivona = new Ivona('moj@mail.pl', 'haslo', 'http://www.ivona.com/online/apispwsdl.php', 2); ?>