Anon3363
@Anon3363

WebSocket Yii consik не получаю ответ от сервера от чего может быть?

5f3ebe54d528a916884010.png5f3ebe5bd02c3563232948.png5f3ebe6640bf4917659839.png

Вот контоллер сервера
<?php
namespace app\commands;

use consik\yii2websocket\WebSocketServer;
use yii\console\Controller;

class ServerController extends Controller
{
    public function actionStart()
    {
        $server = new WebSocketServer();
        $server->port = '8090'; 
        $server->on(WebSocketServer::EVENT_WEBSOCKET_OPEN_ERROR, function($e) use($server) {
            echo "Error opening port " . $server->port . "\n";
            // $server->port += 1;
            $server->start();
        });

        $server->on(WebSocketServer::EVENT_WEBSOCKET_OPEN, function($e) use($server) {
            echo "Server started at port " . $server->port;
        });

        $server->start();
    }
}


Вот деамон который должен ответыть на сообщении
<?php
namespace app\daemons;

use consik\yii2websocket\WebSocketServer;
use Ratchet\ConnectionInterface;

class CommandsServer extends WebSocketServer
{



    protected function getCommand(ConnectionInterface $from, $msg)
    {
        return $msg;
    }


    function commandPing(ConnectionInterface $client, $msg)
    {
        $client->send('Pong');
    }

}


JavaScript
var socket = new WebSocket('ws://127.0.0.1:8090');
socket.onopen = () => socket.send('ping');

   socket.onclose = function(event) {
   	if (event.wasClean) {
   		alert('Соединение закрыто чисто');
   	} else {
   		alert('Обрыв соединения'); 
   	}
   	alert('Код: ' + event.code + ' причина: ' + event.reason);
   };

socket.onmessage = function (event) {
  console.log(event.data);
}
  • Вопрос задан
  • 269 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы