Почему я не могу отправить данные в веб-сокетке в блоке onConnect?
Привееет! Снова я со своим уже любимым веб-сокетом! Долблю его уже вторые сутки без сна и снова столкнулся с проблемой:
$ws_worker = new Worker('websocket://0.0.0.0:2346', $context);
$ws_worker->transport = 'ssl';
$ws_worker->count = 1;
function send($data, $ws_worker) {
foreach ($ws_worker->connections as $cc) {
$cc->send($data);
echo "Обработочка \n";
}
};
$ws_worker->onConnect = function($connection) use ($ws_worker) {
echo "Openned \n";
$data = array();
$data["type"] = "info";
$data["cnt"] = 32;
$arr = json_encode($data);
send($arr,$ws_worker);
};
$ws_worker->onClose = function($connection) use ($ws_worker) {
echo "Closed \n";
};
$ws_worker->onMessage = function ($connection, $data) use ($ws_worker) {
send($data,$ws_worker);
};
Worker::runAll();
Мне нужно сделать счетчик онлайна на сайте, пробую отправить запрос на всех клиентов, а тут бац, и я не могу. Причем, если убрать все из метода onConnect - хотя-бы чат работает, но если исполнять код в этом виде - ничего не происходит( Лишь только выводится в консоль "Обработка","Openned" и "Closed". То-есть оно дергается, но не может отправить(
Памагити!