for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace Carpenstar\ByBitAPI\WebSockets\Derivatives\PublicChannels\OrderBook\Argument;
use Carpenstar\ByBitAPI\Core\Enums\EnumIntervals;
use Carpenstar\ByBitAPI\Core\Enums\WebSocketOrderBookDepth;
use Carpenstar\ByBitAPI\Core\Enums\WebSocketTopicNameEnum;
use Carpenstar\ByBitAPI\Core\Objects\WebSockets\WebSocketArgument;
class OrderBookArgument extends WebSocketArgument
{
private int $depth;
public function __construct(string $symbol, int $depth, ?string $reqId = null)
parent::__construct($symbol, $reqId);
if (!in_array($depth, WebSocketOrderBookDepth::ALL)) {
throw new \Exception("Invalid interval {$depth} specified. See the list of available intervals in the file: " . EnumIntervals::class);
}
$this->depth = $depth;
public function getTopic(): array
return [WebSocketTopicNameEnum::DERIVATIVES_ORDERBOOK.".{$this->depth}.{$this->getSymbols()}"];