private async void _lockTrackerService_PropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e)
        {
            if (QueueList.Any())
            {
                var chatId = QueueList[0].ChatId;
                if (_lockTrackerService.IsRoomFree)
                {
                    InitializeRoomDequeue();

                    _menuLoader.LoadStateMenu(chatId, UserState.InMainMenu);
                }
                else
                {
                    CancelInBetweenTimer(toTheRoom: true);


                    _menuLoader.LoadStateMenu(chatId, UserState.InTheRoom);


                    _LogHelper.Log("LLN435N43FDGFDGFD879", $"About to delete a notification for {chatId}", chatId, LogLevel.Information);
                }
            }
            else
            {
                _LogHelper.Log("NBN75KJ6U55Y", "Adding user0 to the EMPTY queue", LogLevel.Information);
                var slot = new QueueSlot(0, 5);
                QueueList.Add(slot);

                ProcessUserInTheRoom();
            }
        }
Пример #2
0
        public void Enqueue(MusicData item)
        {
            lock (QueueList)
            {
                if (QueueList.Count == 1 || IsPlaying)
                {
                    Player.StopAsync();
                    QueueList.Clear();
                }

                if (!QueueList.Any())
                {
                    QueueList.Add(item);
                }
            }
        }