Hi!
Ich versuche momentan Ratchet und Symfony 3 bei mir Lokal zum Laufen zu bringen. Beim Code habe ich mich am Hello-World Beispiel von Ratchet orientiert:
ChatServerCommand.php
Die Chat-Klasse habe ich vom Hello World Beispiel - abgesehen vom Namespace - 1:1 übernommen. In der Kommandozeile starte ich den Server mit:
Versuche ich mich in einem anderen CMD-Fenster mit telnet localhost 8080 zu verbinden, erscheint zuerst "Verbindungsaufbau zu localhost...", nach dem Verbindungsaufbau ist es mir aber nicht möglich Nachrichten abzusenden geschweige denn einzutippen. In der onOpen-Methode der Chat Klasse sollte zudem bei jedem neuen Verbindungsaufbau eine Meldung ausgegeben werden:
In dem CMD-Fenster, in welchem ich den Server starte fehlt jede Spur von dieser Meldung. Heißt dass das der Verbindungsaufbau fehlgeschlagen ist oder hat das andere Ursachen? Ich bin mir auch nicht sicher, wie ich das Ganze am Besten debuggen soll!? Habe das Hello-World-Bsp bereits ohne Symfony probiert, also den Code 1:1 übernommen - da klappt dann auch alles wunderbar
Ich versuche momentan Ratchet und Symfony 3 bei mir Lokal zum Laufen zu bringen. Beim Code habe ich mich am Hello-World Beispiel von Ratchet orientiert:
ChatServerCommand.php
PHP-Code:
<?php
namespace AppBundle\Command;
use Symfony\Component\Console\Command\Command;
use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Output\OutputInterface;
use Ratchet\Server\IoServer;
use AppBundle\Chat;
class ChatServerCommand extends Command
{
protected function configure()
{
$this->setName('app:chat-server');
}
protected function execute(InputInterface $input, OutputInterface $output)
{
$output->writeln('Starting chat server.');
$server = IoServer::factory(
new Chat(),
8080
);
$server->run();
}
}
Die Chat-Klasse habe ich vom Hello World Beispiel - abgesehen vom Namespace - 1:1 übernommen. In der Kommandozeile starte ich den Server mit:
Code:
php bin/console app:chat-server
PHP-Code:
// ...
public function onOpen(ConnectionInterface $conn)
{
// Store the new connection to send messages to later
$this->clients->attach($conn);
echo "New connection! ({$conn->resourceId})\n";
}
// ...
Kommentar