Could you please share why nathelper aggregates both WS and WSS transports to "ws" and then msg_translator have to detect the type of a connection to a destination to build correct via ?
modules/nathelper/nathelper.c create_rcv_uri() function :
case PROTO_WS:
case PROTO_WSS:
proto.s = "WS";
proto.len = 2;
break;