NAME
Mojo::Transaction::WebSocket - WebSocket Transaction Container
SYNOPSIS
use Mojo::Transaction::WebSocket;
DESCRIPTION
Mojo::Transaction::WebSocket is a container and state machine for WebSocket transactions as described in The Web Socket protocol.
ATTRIBUTES
Mojo::Transaction::WebSocket inherits all attributes from Mojo::Transaction and implements the following new ones.
finished
my $cb = $ws->finished;
$ws = $ws->finsihed(sub {...});
Callback signaling that peer finished the connection.
$ws->finsihed(sub {
my $self = shift;
});
handshake
my $handshake = $ws->handshake;
$ws = $ws->handshake(Mojo::Transaction::HTTP->new);
The original handshake transaction.
receive_message
my $cb = $ws->receive_message;
$ws = $ws->receive_message(sub {...});
The callback that receives decoded messages one by one.
$ws->receive_message(sub {
my ($self, $message) = @_;
});
METHODS
Mojo::Transaction::WebSocket inherits all methods from Mojo::Transaction and implements the following new ones.
client_close
$ws->client_close;
Connection got closed.
client_read
$ws->client_read($data);
Read raw WebSocket data, only used by clients.
client_write
my $chunk = $ws->client_write;
Raw WebSocket data to write, only used by clients.
connection
my $connection = $ws->connection;
The connection this websocket is using.
finish
$ws->finish;
Finish the WebSocket connection gracefully.
is_websocket
my $is_websocket = $ws->is_websocket;
True.
local_address
my $local_address = $ws->local_address;
The local address of this WebSocket.
local_port
my $local_port = $ws->local_port;
The local port of this WebSocket.
remote_address
my $remote_address = $ws->remote_address;
The remote address of this WebSocket.
remote_port
my $remote_port = $ws->remote_port;
The remote port of this WebSocket.
req
my $req = $ws->req;
The original handshake request.
res
my $req = $ws->res;
The original handshake response.
send_message
$ws->send_message('Hi there!');
Send a message over the WebSocket, encoding and framing will be handled transparently.
server_close
$ws->server_close;
Connection got closed.
server_read
$ws->server_read($data);
Read raw WebSocket data, only used by servers.
server_write
my $chunk = $ws->server_write;
Raw WebSocket data to write, only used by servers.