public void ConnectInter(Uri peer)
        {
            WebSocketConnection _connectionSocket;
            ClientWebSocket     m_ClientWebSocket = new ClientWebSocket();

            m_ClientWebSocket.ConnectAsync(peer, CancellationToken.None);

            while (m_ClientWebSocket.State != WebSocketState.Open)
            {
                // wait
            }

            switch (m_ClientWebSocket.State)
            {
            case WebSocketState.Open:
                WebSocketConnection _socket = new ClientWebSocketConnection(m_ClientWebSocket, peer, _connectionLogger);
                _connectionSocket = _socket;
                break;

            default:
                throw new WebSocketException($"Cannot connect to remote node status {m_ClientWebSocket.State}");
            }

            while (_result == "")
            {
                // wait
            }
        }
        public async Task <bool> Connect(Uri peer)
        {
            await WebSocketClient.Connect(peer, _connectionLogger);

            _clientWebSocket           = (ClientWebSocketConnection)WebSocketClient._connectionSocket;
            _clientWebSocket.onMessage = message => OnInvokeMessage(message);
            return(true);
        }
Example #3
0
        public static async Task <WebSocketConnection> Connect(Uri peer, Action <string> log)
        {
            ClientWebSocket m_ClientWebSocket = new ClientWebSocket();
            await m_ClientWebSocket.ConnectAsync(peer, CancellationToken.None);

            switch (m_ClientWebSocket.State)
            {
            case WebSocketState.Open:
                log($"Opening WebSocket connection to remote server {peer}");
                WebSocketConnection _socket = new ClientWebSocketConnection(m_ClientWebSocket, peer, log);
                _connectionSocket = _socket;
                return(_socket);

            default:
                log?.Invoke($"Cannot connect to remote node status {m_ClientWebSocket.State}");
                throw new WebSocketException($"Cannot connect to remote node status {m_ClientWebSocket.State}");
            }
        }