public function onSessionStart($session, $transport)
{
$promises = [];
$promises[] = $this->getCallee()->register($session, 'add_authorization_rule', [$this, "addAuthorizationRule"]);
$promises[] = $this->getCallee()->register($session, 'remove_authorization_rule', [$this, "removeAuthorizationRule"]);
$promises[] = $this->getCallee()->register($session, 'flush_authorization_rules', [$this, 'flushAuthorizationRules']);
$promises[] = $this->getCallee()->register($session, 'get_authorization_rules', [$this, 'getAuthorizationRules']);
$promises[] = $this->getCallee()->register($session, 'test_authorization', [$this, 'testAuthorization']);
$pAll = \React\Promise\all($promises);
$pAll->then(function () {
$this->setReady(true);
}, function () {
$this->setReady(false);
});
}