GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  MOJO::WEBSOCKET (3)

.ds Aq ’

NAME

Mojo::WebSocket - The WebSocket protocol

CONTENTS

SYNOPSIS



  use Mojo::WebSocket qw(WS_TEXT build_frame parse_frame);

  my $bytes = build_frame 0, 1, 0, 0, 0, WS_TEXT, Hello World!;
  my $frame = parse_frame \$bytes, 262144;



DESCRIPTION

Mojo::WebSocket implements the WebSocket protocol as described in RFC 6455 <http://tools.ietf.org/html/rfc6455>. Note that 64-bit frames require a Perl with support for quads or they are limited to 32-bit.

FUNCTIONS

Mojo::WebSocket implements the following functions, which can be imported individually.

    build_frame



  my $bytes = build_frame $masked, $fin, $rsv1, $rsv2, $rsv3, $op, $payload;



Build WebSocket frame.



  # Masked binary frame with FIN bit and payload
  say build_frame 1, 1, 0, 0, 0, WS_BINARY, Hello World!;

  # Text frame with payload but without FIN bit
  say build_frame 0, 0, 0, 0, 0, WS_TEXT, Hello ;

  # Continuation frame with FIN bit and payload
  say build_frame 0, 1, 0, 0, 0, WS_CONTINUATION, World!;

  # Close frame with FIN bit and without payload
  say build_frame 0, 1, 0, 0, 0, WS_CLOSE, ;

  # Ping frame with FIN bit and payload
  say build_frame 0, 1, 0, 0, 0, WS_PING, Test 123;

  # Pong frame with FIN bit and payload
  say build_frame 0, 1, 0, 0, 0, WS_PONG, Test 123;



    challenge



  my $bool = challenge Mojo::Transaction::WebSocket->new;



Check WebSocket handshake challenge.

    client_handshake



  my $tx = client_handshake Mojo::Transaction::HTTP->new;



Perform WebSocket handshake client-side.

    parse_frame



  my $frame = parse_frame \$bytes, $limit;



Parse WebSocket frame.



  # Parse single frame and remove it from buffer
  my $frame = parse_frame \$buffer, 262144;
  say "FIN: $frame->[0]";
  say "RSV1: $frame->[1]";
  say "RSV2: $frame->[2]";
  say "RSV3: $frame->[3]";
  say "Opcode: $frame->[4]";
  say "Payload: $frame->[5]";



    server_handshake



  my $tx = server_handshake Mojo::Transaction::HTTP->new;



Perform WebSocket handshake server-side.

CONSTANTS

Mojo::WebSocket implements the following constants, which can be imported individually.

    WS_BINARY

Opcode for Binary frames.

    WS_CLOSE

Opcode for Close frames.

    WS_CONTINUATION

Opcode for Continuation frames.

    WS_PING

Opcode for Ping frames.

    WS_PONG

Opcode for Pong frames.

    WS_TEXT

Opcode for Text frames.

SEE ALSO

Mojolicious, Mojolicious::Guides, <http://mojolicious.org>.
Search for    or go to Top of page |  Section 3 |  Main Index


perl v5.20.3 MOJO::WEBSOCKET (3) 2016-03-15

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.