The WebSocket DAT receives and parses WebSocket messages. WebSockets are fast an efficient two way communication protocol used by web servers and clients. Each message is parsed and appended as a row in the DAT's table. The table is FIFO "first-in first-out" and limited to parameter-set number of lines. An optional script may be run for each packet received. The WebSocket DAT also supports the Socket.IO up to version 0.9.16 handshake protocol. Secure (tls) websocket servers are also supported. Connections to different websocket sites are supported without requiring manual header setup.
See also: TCP/IP DAT
Example project: chat with WebSockets
Parameters - Connect Page
active - While on, the DAT receives information sent to the network port. While Off, no updating occurs. Data sent to the port is lost.
netaddress - The network address of the server computer. This address is a standard WWW address, such as
foo.bar.com. You can put an IP address (e.g.
100.123.45.78). If you put
localhost, it means the other end of the connection is on the same computer.
port - The port in which the DAT will accept messages.
Socket.io Format (0.9.16)
socketio - When on, a Socket.io handshake is negotiated after the WebSocket handshake. Messages will continue as normal, plus Socket.IO heartbeats, timeouts and disconnection support are additionally available, which are useful for realtime applications.
socketioaddress - Can be used to define initial socket.io header requests.
Parameters - Received Messages Page
callbacks - The Callbacks DAT will execute once for each message coming in.
executeloc - ⊞ - Determines the location the script is run from.
fromop - The operator whose state change will trigger the DAT to execute its script when Execute from is set to Specified Operator. This operator is also the path that the script will be executed from if the Execute from parameter is set to Specified Operator.
clamp - The DAT is limited to 100 messages by default but with Clamp Output, this can be set to anything including unlimited.
maxlines - Limits the number of messages, older messages are removed from the list first.
clear - Deletes all lines except the heading. To clear with a python script
bytes - Outputs the raw bytes of the message in a separate column.
Parameters - Common Page
language - ⊞ - Select how the DAT decides which script language to operate on.
input- The DAT uses the inputs script language.
node- The DAT uses it's own script language.
extension - ⊞ - Select the file extension this DAT should expose to external editors.
dat- various common file extensions.
- From Language
language- pick extension from DATs script language.
- Custom Extension
custom- Specify a custom extension.
customext - Specifiy the custom extension.
wordwrap - ⊞ - Enable Word Wrap for Node Display.
input- The DAT uses the inputs setting.
on- Turn on Word Wrap.
off- Turn off Word Wrap.
- Input 0 -
|• • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • •|
Any of the procedural data operators. OPs do all the work in TouchDesigner. They "cook" and output data to other OPs, which ultimately result in new images, data and audio being generated. See Node.