public void callAttached(Call call) {
    if (logger.isDebugEnabled()) logger.debug("callAttached " + call);

    if (call instanceof ConferenceCall) {
      call.addListener(this);

      if (logger.isDebugEnabled()) logger.debug("callAttached " + call + " addListener " + this);
      monitorConference(((ConferenceCall) call).getRoomId());
    }
  }
  public void callDetached(Call call) {
    if (logger.isDebugEnabled()) logger.debug("callDetached " + call);

    if (call instanceof ConferenceCall) {
      call.removeListener(this);
      ConferenceCall confCall = (ConferenceCall) call;
      if (logger.isDebugEnabled())
        logger.debug("callDetached " + confCall + " removeListener " + this);
      unmonitorConference(((ConferenceCall) call).getRoomId());
    }
  }