Commit e32f2752 authored by Mat's avatar Mat

on lance le serveur web socket, et au hit de la page les messages s'affichent

(dans le shell et dans le debug du browser)

rem:
* on lance le serveur, mais pas dans le container, depuis un shell normal
  mat@totoro:~/cur/www/symfony$ php bin/console ws:run
* on surveille la table des ports
  watch -d "netstat -tanpu | egrep -i 'established|listen' "
parent 3250da39
......@@ -7,6 +7,7 @@
<script src="{{ asset('bundles/fosjsrouting/js/router.min.js') }}"></script>
<script src="{{ path('fos_js_routing_js', { callback: 'fos.Router.setData' }) }}"></script>
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.0.10/css/all.css" integrity="sha384-+d0P83n9kaQMCwj8F4RJB66tzIwOKmrdb46+porD/OvrJ+37WqIM7UoBtwHO6Nlg" crossorigin="anonymous">
{% block stylesheets %}{% endblock %}
<link rel="stylesheet" type="text/css" href="{{ asset('css/style.css') }}">
......
......@@ -27,7 +27,7 @@ class WsCommand extends ContainerAwareCommand
protected function configure()
{
$this->setName('ws:run');
$this->setDescription("Démarre le serveur Web Socket");
$this->setDescription("Démarre le serveur Web Socket\n");
//parent::configure(); // pas nécessaire ici
}
......@@ -39,7 +39,7 @@ class WsCommand extends ContainerAwareCommand
*/
protected function execute(InputInterface $input, OutputInterface $output)
{
$output->write("Tentative de connexion au chat");
$output->write("Tentative de connexion au chat\n");
/*
// méthode 1
......@@ -48,12 +48,12 @@ class WsCommand extends ContainerAwareCommand
new WsServer(
new ChatHub($this->getContainer())
)
), 8088, '/'
), 8088, 'ws://0.0.0.0/socket'
);
*/
// méthode 2
$server = new App('localhost', 8088);
$server = new App('0.0.0.0', 8088);
$server->route('/', new ChatHub($this->getContainer()));
$server->run();
......
......@@ -4,3 +4,27 @@
Hello World!
{% endblock %}
{% block javascripts %}
<script>
// pas nécessaire en ECMAscript 6
//"use strict"; // une sécurité, oblige à écrire correctement le javascript
$(document).ready(function() {
let connection = new WebSocket('ws://0.0.0.0:8088/');
connection.onopen = function(e)
{
connection.send("hello");
};
connection.onmessage = function(e)
{
console.log(e.data);
};
});
</script>
{% endblock %}
......@@ -38,6 +38,8 @@ class ChatHub implements MessageComponentInterface
function onOpen(ConnectionInterface $conn)
{
// TODO: Implement onOpen() method.
echo "Un utilisateur s'est connecté\n";
$conn->send("Bienvenue sur le chat !");
}
/**
......@@ -49,6 +51,7 @@ class ChatHub implements MessageComponentInterface
function onClose(ConnectionInterface $conn)
{
// TODO: Implement onClose() method.
echo "Un utilisateur s'est déconnecté\n";
}
/**
......@@ -62,6 +65,7 @@ class ChatHub implements MessageComponentInterface
function onError(ConnectionInterface $conn, \Exception $e)
{
// TODO: Implement onError() method.
echo "Une erreur s'est produite\n";
}
/**
......@@ -74,4 +78,5 @@ class ChatHub implements MessageComponentInterface
function onMessage(ConnectionInterface $from, $msg)
{
// TODO: Implement onMessage() method.
echo "Le message ". $msg ." a été reçu\n";
}}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment