I am trying to build messaging tools in my application i am stuck on How to send message to specific register user fetch from database i am new to websocket ratchet.
i want to build something like fiverr, upwork chat where customer can contact to sellers
here is my code
index.html
<html>
<head>
<style>
input, button { padding: 10px; }
</style>
</head>
<body>
<input type="text" id="message" autocomplete="off" />
<button onclick="transmitMessage()">Send</button>
<script>
// Create a new WebSocket.
var socket = new WebSocket('ws://localhost:8080?value=450');
// Define the
var message = document.getElementById('message');
function transmitMessage() {
socket.send( message.value );
}
socket.onmessage = function(e) {
document.getElementById('ids').innerHTML= e.data;
}
</script>
<div id="ids"></div>
</body>
</html>
socket.php
namespace MyApp;
use Ratchet\MessageComponentInterface;
use Ratchet\ConnectionInterface;
class Socket implements MessageComponentInterface {
public function __construct()
{
$this->clients = new \SplObjectStorage;
}
public function onOpen(ConnectionInterface $conn) {
// Store the new connection in $this->clients
$this->clients->attach($conn);
echo "New connection! ({$conn->resourceId})\n";
}
public function onMessage(ConnectionInterface $from, $msg) {
foreach ( $this->clients as $client ) {
if ( $from->resourceId == $client->resourceId ) {
continue;
}
$client->send( "Client $from->resourceId said $msg" );
}
}
public function onClose(ConnectionInterface $conn) {
}
public function onError(ConnectionInterface $conn, \Exception $e) {
}
}