A node that dynamically connects to a WebSocket URL, can send and receive messages, and reports connection state changes.