public ConnectionWorker(AudioWorker audioWorker) { _audioWorker = audioWorker; _connectionMaintainer = new HubConnectionMaintainer(); _connectionMaintainer.Connection.On(MessagingConstants.ClientMessages.CHECK_STATE, SendState); _connectionMaintainer.Connection.On(MessagingConstants.ClientMessages.PLAY_PAUSE, async() => { await OnPlayPause(); }); _connectionMaintainer.Connection.On(MessagingConstants.ClientMessages.DEC_VOLUME, async() => { await OnTuneVolume(false); }); _connectionMaintainer.Connection.On(MessagingConstants.ClientMessages.INC_VOLUME, async() => { await OnTuneVolume(true); }); _connectionMaintainer.Connection.On <double>(MessagingConstants.ClientMessages.SET_VOLUME, (v) => { _audioWorker.SetVolume((int)v); }); _connectionMaintainer.Connection.On(MessagingConstants.ClientMessages.NEXT, () => { _audioWorker.Next(); }); _connectionMaintainer.Connection.On(MessagingConstants.ClientMessages.PREV, () => { _audioWorker.Prev(); }); }
static async Task Main(string[] args) { var audioWorker = new AudioWorker(); var worker = new ConnectionWorker(audioWorker); while (true) { Console.ReadKey(); } }