Búsqueda de sitios web

javascript - angular 9 websocket obtener estado de la conexión


Escribí una conexión websocket simple en Angular 9.
este es un ejemplo de código :

import {Injectable} from '@angular/core';
import {webSocket} from 'rxjs/webSocket';
import {delay, retryWhen} from 'rxjs/operators';

@Injectable({
  providedIn: 'root'
})
export class WebSocketService {
  private host = 'ws://localhost:8080/test';
  private isConnected = false;

  private ws = webSocket({
    url: this.host,
    openObserver: {
      next: () => this.isConnected = true
    },
    closeObserver: {
      next: () => this.isConnected = false
    }
  });

  constructor() {
    this.ws
      .pipe(
        retryWhen(e => {
          delay(400);
          return e;
        })
      ).subscribe();

    console.log('Connection status: ' + this.isConnected);
  }

  public sendMessage(msg: string) {
    this.ws.next(msg);
  }
}

con este código puedo enviar mensajes sin ningún problema.
Quiero comprobar el estado de la conexión pero isConnected siempre devuelve falso.
¿Cómo puedo solucionar este problema?