kemsolmir/sletatru

Sletat.ru web service


Keywords
rest, api, soap, sletat.ru, tourism
License
MIT

Documentation

Php ΠΊΠ»ΠΈΠ΅Π½Ρ‚ для api sletat.ru(ΡΠ»Π΅Ρ‚Π°Ρ‚ΡŒ.Ρ€Ρƒ)

Php ΠΎΠ±Π΅Ρ€Ρ‚ΠΊΠ° для api sletat.ru(ΡΠ»Π΅Ρ‚Π°Ρ‚ΡŒ.Ρ€Ρƒ).

Установка

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Composer.

Π”ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ Π² ваш composer.json Π² Ρ€Π°Π·Π΄Π΅Π» require:

"require": {
    "kemsolmir/sletatru": "*"
}

ΠžΠ±Ρ‹Ρ‡Π½Π°Ρ

Π‘ΠΊΠ°Ρ‡Π°ΠΉΡ‚Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ ΠΈ распакуйтС Π΅Π΅ Π² свой ΠΏΡ€ΠΎΠ΅ΠΊΡ‚. Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Ρ„Π°ΠΉΠ» Autoloader.php ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ Π² вашСм скриптС.

require_once 'lib/Autoloader.php';

БСрвис для поиска Ρ‚ΡƒΡ€ΠΎΠ²

Soap сСрвис для поиска Ρ‚ΡƒΡ€ΠΎΠ² с использованиСм API ΡΠ»Π΅Ρ‚Π°Ρ‚ΡŒ.Ρ€Ρƒ

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

//ΠΈΠ½ΠΈΡ†ΠΈΠΈΡ€ΡƒΠ΅ΠΌ Π½ΠΎΠ²Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ xml сСрвиса
$xml = new \sletatru\XmlGate([
	'login' => 'ваш Π»ΠΎΠ³ΠΈΠ½ для Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° сСрвисС',
	'password' => 'ваш ΠΏΠ°Ρ€ΠΎΠ»ΡŒ для Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° сСрвисС',
]);
//ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ список Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ² Π²Ρ‹Π»Π΅Ρ‚Π°
$departCities = $xml->GetDepartCities();

Настройка

ΠŸΡ€ΠΈ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ:

$xml = new \sletatru\XmlGate([
	'login' => 'ваш Π»ΠΎΠ³ΠΈΠ½ для Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° сСрвисС',
	'password' => 'ваш ΠΏΠ°Ρ€ΠΎΠ»ΡŒ для Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° сСрвисС',
]);

ПослС ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ:

$xml->config([
	'login' => 'ваш Π»ΠΎΠ³ΠΈΠ½ для Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° сСрвисС',
	'password' => 'ваш ΠΏΠ°Ρ€ΠΎΠ»ΡŒ для Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° сСрвисС',
]);

ΠžΠΏΡ†ΠΈΠΈ

  • wsdl - ссылка Π½Π° описаниС wsdl, ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ 'http://module.sletat.ru/XmlGate.svc?wsdl';

  • login - Π»ΠΎΠ³ΠΈΠ½ для Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° сСрвисС;

  • password - ΠΏΠ°Ρ€ΠΎΠ»ΡŒ для Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° сСрвисС;

  • soapOptions - настройки SoapClient, ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ [];

  • catchExceptions - Ссли Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ истинно, Ρ‚ΠΎ всС ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‡Π΅Π½Ρ‹ классом ΠΈ внСсСны Π²ΠΎ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ массив ошибок, Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π½Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒΡΡ, ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ true;

ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹

Названия ΠΈ сигнатуры ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‚ с названиями ΠΈ сигнатурами ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² api. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅.

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹

  • array \sletatru\XmlGate::getErrors( void ) - Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ массив ошибок, ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Ρ… Π²ΠΎ врСмя запросов ΠΊ сСрвису.

  • bool \sletatru\XmlGate::hasErrors( void ) - Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ истину, Ссли Π²ΠΎ врСмя выполнСния запроса Π±Ρ‹Π»ΠΈ ошибки.

  • void \sletatru\XmlGate::clearErrors( void ) - ΠΎΡ‡ΠΈΡ‰Π°Π΅Ρ‚ список ошибок.

  • array \sletatru\XmlGate::getHotelImageUrl( int $id, int $count[, int $width, int $height, int $method] ) - Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅Ρ‚ ссылку Π½Π° Ρ„ΠΎΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΡŽ с порядковым Π½ΠΎΠΌΠ΅Ρ€ΠΎΠΌ $count отСля с ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠΌ $id, ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ ΡˆΠΈΡ€ΠΈΠ½Ρ‹ ΠΈ высоты.

БСрвис для поиска горящих Ρ‚ΡƒΡ€ΠΎΠ²

Rest сСрвис для поиска горящих Ρ‚ΡƒΡ€ΠΎΠ² с использованиСм API ΡΠ»Π΅Ρ‚Π°Ρ‚ΡŒ.Ρ€Ρƒ

Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π» Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для поиска горящих Ρ‚ΡƒΡ€ΠΎΠ² (Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄ GetTours). ВсС ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ XML шлюза, описанного Π²Ρ‹ΡˆΠ΅, Π² Ρ‚ΠΎΠΌ числС ΠΈ Π°ΠΊΡ‚ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ горящСго Ρ‚ΡƒΡ€Π°.

Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Ρ‚ΡƒΡ€ΠΎΠ², Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹Ρ… ΠΈΠ· поиска максимально ΠΏΡ€ΠΈΠ±Π»ΠΈΠΆΠ΅Π½Ρ‹ ΠΊ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌ Ρ‚ΡƒΡ€ΠΎΠ², Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹Ρ… ΠΏΡ€ΠΈ поискС Ρ‡Π΅Ρ€Π΅Π· XML шлюз, поэтому названия ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Π½Π΅ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‚ с Π½ΡƒΠΌΠ΅Ρ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ.

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

//ΠΈΠ½ΠΈΡ†ΠΈΠΈΡ€ΡƒΠ΅ΠΌ Π½ΠΎΠ²Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ json сСрвиса
$json = new \sletatru\JsonGate([
	'login' => 'ваш Π»ΠΎΠ³ΠΈΠ½ для Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° сСрвисС',
	'password' => 'ваш ΠΏΠ°Ρ€ΠΎΠ»ΡŒ для Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° сСрвисС',
]);
//ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ список горящих Ρ‚ΠΊΡ€ΠΎΠ² ΠΏΠΎ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Ρƒ
$tours = $json->GetTours($cityFrom, $countryTo);

Настройка

ΠŸΡ€ΠΈ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ:

$json = new \sletatru\JsonGate([
	'login' => 'ваш Π»ΠΎΠ³ΠΈΠ½ для Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° сСрвисС',
	'password' => 'ваш ΠΏΠ°Ρ€ΠΎΠ»ΡŒ для Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° сСрвисС',
]);

ПослС ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ:

$json->config([
	'login' => 'ваш Π»ΠΎΠ³ΠΈΠ½ для Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° сСрвисС',
	'password' => 'ваш ΠΏΠ°Ρ€ΠΎΠ»ΡŒ для Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° сСрвисС',
]);

ΠžΠΏΡ†ΠΈΠΈ

  • url - ссылка Π½Π° сСрвис, ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ 'http://module.sletat.ru/Main.svc';

  • login - Π»ΠΎΠ³ΠΈΠ½ для Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° сСрвисС;

  • password - ΠΏΠ°Ρ€ΠΎΠ»ΡŒ для Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° сСрвисС;

ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹

Названия ΠΈ сигнатуры ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‚ с названиями ΠΈ сигнатурами ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² api. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅.

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹

  • array \sletatru\JsonGate::getErrors( void ) - Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ массив ошибок, ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Ρ… Π²ΠΎ врСмя запросов ΠΊ сСрвису.

  • bool \sletatru\JsonGate::hasErrors( void ) - Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ истину, Ссли Π²ΠΎ врСмя выполнСния запроса Π±Ρ‹Π»ΠΈ ошибки.

  • void \sletatru\JsonGate::clearErrors( void ) - ΠΎΡ‡ΠΈΡ‰Π°Π΅Ρ‚ список ошибок.