PHP API Client for Ready Theatre Systems, LLC – Open Interface API
use SudiptoChoudhury\Rts\Api;
$rts = new Api([
'theatre' => '<<theatre number>>'
'username' => '<<password>>',
'password' => '<<password>>',
]);
$result = $rts->getShowTime(['ShowSales' => 1, 'ShowAvalTickets' => 1, 'ShowSaleLinks' => 1]);
$result = $rts->checkIfSoldOut([
'Data' => [
"Packet" => [
'PerformanceID' => '018129000023'
]
]
]);
$result = $rts->getGiftCardInformation([
'Data' => [
"Packet" => [
'GiftCards' => [
'GiftCard' => '1234510813486422'
]
]
]
]);
- Any flavour of PHP 7.1+ should do
You can install the library via Composer by adding the following line to the require block of your composer.json file (replace dev-master with latest stable version):
"sudiptochoudhury/php-ready-theatre-systems": "dev-master"
or run the following command:
composer require sudiptochoudhury/php-ready-theatre-systems
All you need to do is to pass theatre id, username and password to the constructor.
use SudiptoChoudhury\Rts\Api;
new Api([
'theatre' => '<<theatre number>>'
'username' => '<<password>>',
'password' => '<<password>>'
]);
Additionally, you can set a logger via log
property.
- You can set log to
false
to disable logging. - You can also pass an array with
file
andpath
properties.
use SudiptoChoudhury\Rts\Api;
new Api([
'theatre' => '<<theatre number>>'
'username' => '<<password>>',
'password' => '<<password>>',
'log' => ['file' => 'rts.log', 'path' => '/your/log/path']
]);
- You can also pass a
Monolog\Logger
instance.
use SudiptoChoudhury\Rts\Api;
new Api([
'theatre' => '<<theatre number>>'
'username' => '<<password>>',
'password' => '<<password>>',
'log' => ['logger' => $monologInstance]
]);
You can use client
property to forward to GuzzleHttp\Client
constructor.
use SudiptoChoudhury\Rts\Api;
new Api([
'theatre' => '<<theatre number>>'
'username' => '<<password>>',
'password' => '<<password>>',
'client' => ['timeout' => 5]
]);
If you wish to tap into request and response handler stacks use settings
instead of using client
's handlers
property.
'settings' => [
'responseHandler' => function (ResponseInterface $response) {
// do something
return $response;
},
'requestHandler' => function (RequestInterface $request) {
// some action
return $request;
},
],
Next, call the desired method from the table given below. In most methods you may need to pass parameters. The parameters are to be passed as an associative array.
Examples:
$rts = new Api([
'theatre' => '<<theatre number>>'
'username' => '<<password>>',
'password' => '<<password>>',
]);
$result = $rts->getShowTime(['ShowSales' => 1, 'ShowAvalTickets' => 1, 'ShowSaleLinks' => 1]);
$result = $rts->checkIfSoldOut([
'Data' => [
"Packet" => [
'PerformanceID' => '018129000023'
]
]
]);
$result = $rts->getGiftCardInformation([
'Data' => [
"Packet" => [
'GiftCards' => [
'GiftCard' => '1234510813486422'
]
]
]
]);
Method & Command | Parameters | Description |
---|---|---|
getShowTimes(array) [POST] ShowTimeXml |
ShowAvalTickets ShowSales ShowSaleLinks |
Get all Performance Schedule |
getGiftCardInformation(array) [POST] GiftInformation |
||
getGiftCardInformationWithPin(array) [POST] GiftInformationWithPIN |
||
buyGiftCard(array) [POST] Buy |
||
refillGiftCard(array) [POST] Buy |
||
registerLoyaltyCard(array) [POST] GIFTINFORMATION |
||
checkIfSoldOut(array) [POST] CheckSoldOut |
||
hasRedeemed(array) [POST] CheckRedeem |
||
verifyTransaction(array) [POST] VERIFYTRANSACTION |
||
getTransactionDetails(array) [POST] TRANSACTIONDETAILS |
||
refund(array) [POST] Refund |
||
reverse(array) [POST] ReverseTransaction |
||
payUsingHostedCheckout(array) [POST] CreatePayment |
||
buyTicket(array) [POST] CreatePayment |
||
getAllSeatLayouts(array) [POST] GetSeatLayouts |
||
getSeatLayout(array) [POST] GETSEATPLANFORPERF |
||
checkPickedSeat(array) [POST] CHECKSEATPICKS |
||
getSeatChart(array) [POST] SeatChart |
||
holdSeats(array) [POST] HoldSeats |
||
releaseSeats(array) [POST] HoldSeats |
||
checkSalesTaxOnConcessionSales(array) [POST] Buy |
||
buyConcessionItems(array) [POST] Buy |