WebSocket nodes appear disconnected while being connected

#1

Hello, I am building a flow with websocket connections using my project Webhook Relay (https://webhookrelay.com/v1/guide/socket-server - it allows receiving webhook without having public IP or configuring NAT/firewall) and it's mostly seem to be working, but it took me a while to figure out that even the websocket nodes are showing "disconnected", they are actually connected and working:

Is it a known bug or am I doing something wrong with my configuration?

I will try creating standalone websocket module as well, as creating a flow manually seems quite a long ceremony :slight_smile:

Whole flow:

[
    {
        "id": "febecf29.9c98f",
        "type": "tab",
        "label": "webhook process",
        "disabled": false,
        "info": ""
    },
    {
        "id": "2929f07a.1283",
        "type": "websocket out",
        "z": "febecf29.9c98f",
        "name": "[ws] wss://my.webhookrelay.com/v1/socket",
        "server": "",
        "client": "667a3498.112ddc",
        "x": 910,
        "y": 120,
        "wires": []
    },
    {
        "id": "62a9f4b6.acdabc",
        "type": "inject",
        "z": "febecf29.9c98f",
        "name": "initial ws auth request",
        "topic": "",
        "payload": "{\"action\":\"auth\",\"key\":\"[TOKEN KEY]\",\"secret\":\"[TOKEN SECRET]\"}",
        "payloadType": "json",
        "repeat": "",
        "crontab": "",
        "once": true,
        "onceDelay": "0.5",
        "x": 160,
        "y": 120,
        "wires": [
            [
                "2929f07a.1283"
            ]
        ]
    },
    {
        "id": "8848a243.ba36f",
        "type": "websocket in",
        "z": "febecf29.9c98f",
        "name": "[ws] wss://my.webhookrelay.com/v1/socket",
        "server": "",
        "client": "667a3498.112ddc",
        "x": 200,
        "y": 280,
        "wires": [
            [
                "4ef219e5.6f1908"
            ]
        ]
    },
    {
        "id": "26fabc07.34a754",
        "type": "function",
        "z": "febecf29.9c98f",
        "name": "subscribe to bucket",
        "func": "let payload = {action:\"subscribe\",buckets:[\"nodered\"]}\nreturn {payload: JSON.stringify(payload)};",
        "outputs": 1,
        "noerr": 0,
        "x": 590,
        "y": 180,
        "wires": [
            [
                "2929f07a.1283"
            ]
        ]
    },
    {
        "id": "4ef219e5.6f1908",
        "type": "json",
        "z": "febecf29.9c98f",
        "name": "",
        "property": "payload",
        "action": "",
        "pretty": false,
        "x": 450,
        "y": 280,
        "wires": [
            [
                "bfe57ee5.7a532"
            ]
        ]
    },
    {
        "id": "2a508cdf.748334",
        "type": "switch",
        "z": "febecf29.9c98f",
        "name": "auth switch",
        "property": "payload.status",
        "propertyType": "msg",
        "rules": [
            {
                "t": "eq",
                "v": "authenticated",
                "vt": "str"
            }
        ],
        "checkall": "true",
        "repair": false,
        "outputs": 1,
        "x": 790,
        "y": 240,
        "wires": [
            [
                "26fabc07.34a754",
                "5ad59a16.0ecf04"
            ]
        ]
    },
    {
        "id": "bfe57ee5.7a532",
        "type": "switch",
        "z": "febecf29.9c98f",
        "name": "type switch",
        "property": "payload.type",
        "propertyType": "msg",
        "rules": [
            {
                "t": "eq",
                "v": "status",
                "vt": "str"
            },
            {
                "t": "eq",
                "v": "webhook",
                "vt": "str"
            }
        ],
        "checkall": "true",
        "repair": false,
        "outputs": 2,
        "x": 610,
        "y": 280,
        "wires": [
            [
                "2a508cdf.748334"
            ],
            [
                "108e396f.08c397"
            ]
        ]
    },
    {
        "id": "108e396f.08c397",
        "type": "debug",
        "z": "febecf29.9c98f",
        "name": "process webhook",
        "active": true,
        "tosidebar": true,
        "console": false,
        "tostatus": false,
        "complete": "payload",
        "x": 850,
        "y": 340,
        "wires": []
    },
    {
        "id": "5ad59a16.0ecf04",
        "type": "debug",
        "z": "febecf29.9c98f",
        "name": "",
        "active": true,
        "tosidebar": true,
        "console": false,
        "tostatus": false,
        "complete": "payload",
        "x": 990,
        "y": 280,
        "wires": []
    },
    {
        "id": "667a3498.112ddc",
        "type": "websocket-client",
        "z": "",
        "path": "wss://my.webhookrelay.com/v1/socket",
        "tls": "",
        "wholemsg": "false"
    }
]