public SlackSocketModeClient(
            ICoreSocketModeClient socket,
            SlackJsonSettings jsonSettings,
            ISlackRequestListener requestListener,
            ISlackHandlerFactory handlerFactory)
        {
            _socket          = socket;
            _jsonSettings    = jsonSettings;
            _requestListener = requestListener;
            _handlerFactory  = handlerFactory;

            _requestSubscription = _socket.Messages
                                   .OfType <SocketEnvelope>()
                                   .SelectMany(HandleRequest)
                                   .Subscribe();
        }
        public SlackSocketModeClient(
            ICoreSocketModeClient socket,
            SlackJsonSettings jsonSettings,
            IEnumerable <ISlackRequestListener> requestListeners,
            ISlackHandlerFactory handlerFactory,
            ILogger logger)
        {
            _socket           = socket;
            _jsonSettings     = jsonSettings;
            _requestListeners = requestListeners;
            _handlerFactory   = handlerFactory;
            _log = logger.ForSource <SlackSocketModeClient>();

            _requestSubscription = _socket.Messages
                                   .OfType <SocketEnvelope>()
                                   .SelectMany(HandleRequest)
                                   .Subscribe();
        }