code: @Override
      public void onReceive(Object message) throws Exception {
          final Class<?> klass = message.getClass();
          final ActorRef self = self();
          final ActorRef sender = sender();
          final State state = fsm.state();
  
          if(logger.isInfoEnabled()) {
              logger.info("********** Bridge " + self.path() + " State: \"" + state.toString());
              logger.info("********** Bridge " + self.path() + " Processing: \"" + klass.getName() + " Sender: " + sender.path());
          }
          if (Observe.class.equals(klass)) {
              onObserve((Observe) message, self, sender);
          } else if (StopObserving.class.equals(klass)) {
              onStopObserving((StopObserving) message, self, sender);
          } else if (StartBridge.class.equals(klass)) {
              onStartBridge((StartBridge) message, self, sender);
          } else if (JoinCalls.class.equals(klass)) {
              onJoinCalls((JoinCalls) message, self, sender);
          } else if (JoinComplete.class.equals(klass)) {
              onJoinComplete((JoinComplete) message, self, sender);
          } else if (MediaServerControllerStateChanged.class.equals(klass)) {
              onMediaServerControllerStateChanged((MediaServerControllerStateChanged) message, self, sender);
          } else if (StopBridge.class.equals(klass)) {
              onStopBridge((StopBridge) message, self, sender);
          } else if (StartRecording.class.equals(klass)) {
              onStartRecording((StartRecording) message, self, sender);
          }
      }
docs: /*
  Events