private async void ConnectChannel()
        {
            if (!CanConnectChannel())
            {
                return;
            }

            await ConnectAsync();

            CloseChannelCommand.RaiseCanExecuteChanged();
            ConnectChannelCommand.RaiseCanExecuteChanged();
        }
        private void CloseChannel()
        {
            if (!CanCloseChannel())
            {
                return;
            }

            _subscriptionSource.Cancel();
            _messagesSubscription.Dispose();
            CloseChannelCommand.RaiseCanExecuteChanged();
            ConnectChannelCommand.RaiseCanExecuteChanged();
        }