====== TcpServer ====== This object allows you to create a TCP server, allowing you to listen to incoming connections. ===== Functions ===== ==== TcpServer ==== Constructor function. === Syntax === var myObject = new TcpServer(events); === Arguments === - events - (object) the events that can be called * onNewConnection - ([[#onNewConnection|onNewConnection]]) called when a client is trying to establish a connection === Example === var myObject = new TcpServer(); var myObject = new TcpServer({ onNewConnection: function() { Console.print("New client!"); } }); ===== Methods ===== ==== listen ==== Start listening for clients. === Syntax === myObject.listen(address, port); myObject.listen(address); myObject.listen(); === Arguments === - address - (string) the address where to listen (default: all network interfaces) - port - (integer) the port number (default: choose a port automatically) === Returns === * (TcpServer) this TcpServer === Exceptions === * (ListenError) unable to start listening ==== waitForNewConnection ==== Freezes the execution until a new connection arrives or **waitTime** time elapsed. === Syntax === myObject.waitForNewConnection(waitTime); myObject.waitForNewConnection(); === Arguments === - waitTime - (integer) the time to wait (milliseconds, default: 30000) === Returns === * (TcpServer) this TcpServer === Exceptions === * (WaitForNewConnectionError) waiting for new connection failed ==== nextPendingConnection ==== Returns the next pending connection as a [[en:code:data:tcp|Tcp]] object that can be used to read and write to the client. You should store this object if you want to write to this client later. === Syntax === myObject.nextPendingConnection(); === Returns === * (Tcp) the new client as a [[en:code:data:tcp|Tcp]] object === Exceptions === * (NoPendingConnectionError) there is no pending connection ==== address ==== Returns the ip address on which this server is listening. === Syntax === myObject.address(); === Returns === * (string) the ip address on which this server is listening ==== port ==== Returns the port used by this server. === Syntax === myObject.port(); === Returns === * (integer) the port used by this server ===== Events ===== ==== onNewConnection ==== Called when a new client has connected. === Syntax === myObject.onNewConnection = function() {}; === Example === myObject.onNewConnection = function() { var client = myObject.nextPendingConnection(); // do something with the client... };