WebSocketReceiver
Receives WebSocket messages from the specified WebSocket server. Produces a feature each time a message is received, and places the contents of the message into the specified attribute. Each incoming feature will cause the WebSocketReceiver to initialize a connection to the specified WebSocket server. The transformer will block while it waits to receive WebSocket messages until the remote host closes the connection.
Usage Notes
The performance of this transformer is dependent on the amount of memory allocated to the Java Virtual Machine (JVM). The following environment variables allow you to specify memory available to Java Plugins:
- FME_JVM_MIN_HEAP_SIZE: Initial heap size for initializing the JVM. Default value is 1024K.
-
FME32_JVM_MIN_HEAP_SIZE: Same as FME_JVM_MIN_HEAP_SIZE, but applies to the 32-bit version of FME Desktop on Windows, and takes precedence over FME_JVM_MIN_HEAP_SIZE.
- FME_JVM_MAX_HEAP_SIZE: Maximum heap size for initializing JVM. Default value is 16384K.
-
FME32_JVM_MAX_HEAP_SIZE: Same as FME_JVM_MAX_HEAP_SIZE, but applies to the 32-bit version of FME Desktop on Windows, and takes precedence over FME_JVM_MAX_HEAP_SIZE.
If unset, the JVM applies the default values. If set, the values must be multiples of 1024K (for example, 4M and 64M, or 4096K and 32768K).
Note: To pass additional parameters used by FME to the Java Virtual Machine, use the JAVA_TOOL_OPTIONS environment variable.
Input Ports
This transformer accepts any feature.
Output Ports
Features containing the data that has been received from the specified WebSocket server.
Parameters
The URL of the remote WebSocket server that the WebSocketReceiver will connect to in order to receive WebSocket messages. The default value is ws://localhost:7078. To initiate a secure connection to a WebSocket server using TLS, specify wss://<hostname>:<port>.
If Yes is specified, either explicitly or through a parameter, the WebSocketReceiver verifies the certificate (or chain of certificates) of the WebSocket server before establishing a connection.
If this optional parameter has a value, then the WebSocketReceiver will transmit the contents of this parameter to the remote WebSocket server before processing any incoming data.
To connect to the FME Server WebSocket server, use the following preamble:
{
"ws_op" : "open",
"ws_stream_ids" : ["<STREAMID>", "<STREAMID>", "<STREAMID>", ...]
}
To specify this preamble, click the ellipsis (...) to open the Connection Preamble dialog. Under FME Server WebSocket Preambles, select the Open Public Stream template. Then, specify a ws_stream_ids value.
ws_stream_ids identifies one or more message streams in order for the WebSocket server to associate them with the correct requesting application.
Specify the output attribute that will store the received WebSocket message data.
Editing Transformer Parameters
Using a set of menu options, transformer parameters can be assigned by referencing other elements in the workspace. More advanced functions, such as an advanced editor and an arithmetic editor, are also available in some transformers. To access a menu of these options, click beside the applicable parameter. For more information, see Transformer Parameter Menu Options.
Transformer Categories
FME Licensing Level
FME Professional edition and above
Technical History
Associated FME function or factory: COM.safe.fme.factory.WebSocketFactory
Search FME Community
Search for samples and information about this transformer on the FME Community.