Paul Evans > Net-Async-WebSocket > Net::Async::WebSocket::Client

Download:
Net-Async-WebSocket-0.08.tar.gz

Dependencies

Annotate this POD

CPAN RT

New  1
Open  3
View/Report Bugs
Module Version: 0.08   Source  

NAME ^

Net::Async::WebSocket::Client - connect to a WebSocket server using IO::Async

SYNOPSIS ^

 use IO::Async::Loop;
 use Net::Async::WebSocket::Client;

 my $client = Net::Async::WebSocket::Client->new(
    on_frame => sub {
       my ( $self, $frame ) = @_;
       print $frame;
    },
 );

 my $loop = IO::Async::Loop->new;
 $loop->add( $client );
 
 $client->connect(
    host => $HOST,
    service => $PORT,
    url => "ws://$HOST:$PORT/",

    on_connected => sub {
       $client->send_frame( "Hello, world!\n" );
    },

    on_connect_error => sub { die "Cannot connect - $_[-1]" },
    on_resolve_error => sub { die "Cannot resolve - $_[-1]" },
 );

 $loop->loop_forever;

DESCRIPTION ^

This subclass of Net::Async::WebSocket::Protocol connects to a WebSocket server to establish a WebSocket connection for passing frames.

METHODS ^

$self->connect( %params ) ==> ( $self )

Connect to a WebSocket server. Takes the following named parameters:

url => STRING

URL to provide to WebSocket handshake

$self->connect( %params )

When not returning a Future, the following additional parameters provide continuations:

on_connected => CODE

CODE reference to invoke when the handshaking is complete.

$client->connect_handle( $handle, %params ) ==> ( $self )

Sets the read and write handles to the IO reference given, then performs the initial handshake using the parameters given. These are as for connect.

AUTHOR ^

Paul Evans <leonerd@leonerd.org.uk>

syntax highlighting: