docs: private void setProtocolIdentifier(final String identifier)
      {
          logger.info("Connected via " + identifier);
  
          // NOTE: value is AMI_VERSION, defined in include/asterisk/manager.h
  
          if (
          // Asterisk 13
          !"Asterisk Call Manager/2.6.0".equals(identifier)
  
                  // Asterisk 13.2
                  && !"Asterisk Call Manager/2.7.0".equals(identifier)
  
                  // Asterisk > 13.5
                  && !"Asterisk Call Manager/2.8.0".equals(identifier)
  
                  // Asterisk > 13.13
                  && !"Asterisk Call Manager/2.9.0".equals(identifier)
  
                  // Asterisk =14.3.0
                  && !"Asterisk Call Manager/3.1.0".equals(identifier)
  
                  // since Asterisk 14.4.0
                  && !"Asterisk Call Manager/3.2.0".equals(identifier)
  
                  // since Asterisk 15
                  && !"Asterisk Call Manager/4.0.0".equals(identifier)
  
                  // since Asterisk 15.1
                  && !"Asterisk Call Manager/4.0.1".equals(identifier)
  
                  // since Asterisk 15.2
                  && !"Asterisk Call Manager/4.0.2".equals(identifier)
  
                  // since Asterisk 15.3
                  && !"Asterisk Call Manager/4.0.3".equals(identifier)
  
                  // Asterisk 16
                  && !"Asterisk Call Manager/5.0.0".equals(identifier)
  
                  && !"OpenPBX Call Manager/1.0".equals(identifier) && !"CallWeaver Call Manager/1.0".equals(identifier)
                  && !(identifier != null && identifier.startsWith("Asterisk Call Manager Proxy/")))
          {
              logger.warn("Unsupported protocol version '" + identifier + "'. Use at your own risk.");
          }
  
          protocolIdentifier.setValue(identifier);
          protocolIdentifier.countDown();
  
      }