/**
* {@inheritdoc}
*/
public function join(string $channel, array $data = [])
{
Assertion::notEmptyKey($data, 'socketId', "Invalid socket id");
Assertion::notEmptyKey($data, 'userId', "Invalid user id");
Assertion::notEmptyKey($data, 'fullName', "Invalid full name");
return $this->pusher->presence_auth($channel, $data['socketId'], $data['userId'], ['id' => $data['userId'], 'name' => utf8_encode($data['fullName'])]);
}