protected override async Task ProcessListenSessionCommandInternalAsync(MBUser user, Message message, ILogger logger, bool isAuthorizationCallback = false) { var listenSession = await ListenSessionService.GetGroupAsync(ChatServices.Telegram, message.Chat.Id.ToString()); if (listenSession == null) { await TelegramClient.SendTextMessageAsync( message.Chat.Id, "This group isn't setup for listening. Run /init first."); } if (CurrentGroupPlaylist.Tracks.Total == 0) { await TelegramClient.SendTextMessageAsync( message.Chat.Id, "No tracks queued up. Add one!"); return; } }
protected override async Task ProcessInternalAsync(MBUser user, Message message, ILogger logger, bool isAuthorizationCallback = false) { ListenGroup = await ListenSessionService.GetGroupAsync(ChatServices.Telegram, message.Chat.Id.ToString()); if (ListenGroup != null) { OwnerSpotifyClient = await SpotifyService.GetClientAsync(ListenGroup.OwnerMBUserId); MessageSenderSpotifyClient = await SpotifyService.GetClientAsync(user); try { CurrentGroupPlaylist = await OwnerSpotifyClient.Playlists.Get(ListenGroup.SpotifyPlaylistId); if (CurrentGroupPlaylist == null) { // TODO: handle User deleted playlist logger.LogError("Playlist wasn't found.. must have been deleted"); return; } } catch (Exception ex) { logger.LogError(ex, "Error retrieving playlist"); } } else if (RequiresActiveGroup) { logger.LogInformation("Requires active group to run this command."); await TelegramClient.SendTextMessageAsync( message.Chat.Id, "Requires an active group to do this. Run /init"); return; } await ProcessListenSessionCommandInternalAsync(user, message, logger, isAuthorizationCallback); }