Я хотел разработать чат-приложение для своего сайта, поэтому, узнав, я обнаружил, что websocket — лучшее решение для общения в реальном времени, и поэтому я решил использовать трещотка.
Я могу настроить его и создать базовое приложение для чата. Вот класс чата.
class Chat implements MessageComponentInterface
{
protected $clients;
public function __construct()
{
$this->clients = new \SplObjectStorage;
}
public function onOpen(ConnectionInterface $conn)
{
$this->clients->attach($conn);
}
public function onMessage(ConnectionInterface $from, $msg)
{
foreach ($this->clients as $client) {
if($client !== $from)
$client->send($msg);
}
}
public function onClose(ConnectionInterface $conn)
{
$this->clients->detach($conn);
}
public function onError(ConnectionInterface $conn, \Exception $e)
{
echo "The following error occured :".$e->getMessage();
$conn->close();
}
}
Но у меня есть следующие вопросы, прежде чем я продолжу (или могу продолжить) дальше:
Задача ещё не решена.
Других решений пока нет …