User Guide

218 Server-Side ActionScript Language Reference
XMLSocket class
Availability
Flash Media Server 2.
Description
The XMLSocket class implements client sockets that let Flash Media Server communicate
with a server identified by an IP address or domain name. The XMLSocket class is useful for
client-server applications that require low latency, such as real-time chat systems. A traditional
HTTP-based chat solution frequently polls the server and downloads new messages using an
HTTP request. In contrast, an XMLSocket chat solution maintains an open connection to
the server, which lets the server immediately send incoming messages without a request from
the client.
To use the XMLSocket class, the server computer must run a daemon that understands the
protocol used by the XMLSocket class. The protocol is described in the following list:
XML messages are sent over a full-duplex TCP/IP stream socket connection.
Each XML message is a complete XML document, terminated by a zero (0) byte.
An unlimited number of XML messages can be sent and received over a single
XMLSocket connection.
The following restriction applies to how and where an XMLSocket object can connect to
the server:
The XMLSocket.connect() method can connect only to TCP port numbers greater than
or equal to 1024. One consequence of this restriction is that the server daemons that
communicate with the XMLSocket object must also be assigned to port numbers greater
than or equal to 1024. Port numbers less than 1024 are often used by system services such
as FTP, Telnet, and HTTP, which prohibits XMLSocket objects from these ports for
security reasons. The port number restriction limits the possibility that these resources can
be inappropriately accessed and abused.
To use the methods of the XMLSocket class, you must first use the constructor,
new
XMLSocket
, to create an XMLSocket object.
NOTE
You can also use the XMLSocket class to create an XMLStreams object.
See“Constructor for the XMLSocket class” on page 219 and “XMLStreams class”
on page 227.