private async Task ProcessCommand(int command) { var task = Task.Run(() => { switch (command) { case KEY_Up: // bool s = await Send(); PlayerControl.VolumePlus(); break; case KEY_Down: PlayerControl.VolumeMinus(); break; case PlayPause: PlayerControl.PlayPause(); break; case NextTrack: PlayerControl.PlayNext(); break; case VolumeMuteUnMute: PlayerControl.VolumeControl(); break; case IncMusicTempo: PlayerControl.TempoPlus(); break; case DecMusicTempo: PlayerControl.TempoMinus(); break; case IncMusicKey: PlayerControl.KeyPlus(); break; case DecMusicKey: PlayerControl.KeyMinus(); break; case AddToQueue: if (!PlayerControl.AddRemoteSongToQueue(commandToProcess)) { SendMessage(FileNotFound.ToString()); } else { SendMessage(FileFound.ToString()); } break; case SongList: break; case UpdateSongDataBase: SendData(); break; case NowPlaying: string nowPlaying = PlayerControl.GetNowPlaying(); // Console.WriteLine(nowPlaying); SendMessage(nowPlaying); break; case RemoveVocalNone: PlayerControl.ChannelSelected = ChannelSelected.None; PlayerControl.RemoveVocalLeftOrRight(); break; case RemoveVocalRight: PlayerControl.ChannelSelected = ChannelSelected.Right; PlayerControl.RemoveVocalLeftOrRight(); break; case RemoveVocalLeft: PlayerControl.ChannelSelected = ChannelSelected.Left; PlayerControl.RemoveVocalLeftOrRight(); break; case RemoveVocal: PlayerControl.RemoveVocalLeftOrRight(); break; case CheckForSongUpdate: if (!PlayerControl.CheckForSongUpdate(commandToProcess)) { SendMessage(NoUpdateAvailable.ToString()); } else { SendMessage(UpdateAvailable.ToString()); } break; case UploadSongUpdate: PlayerControl.UploadSongUpdate(); break; default: break; } }); await task; }