private void SnoozeChat(SlackState lastSlackState, string chatName) { var snoozedChatState = new ChatState { name = chatName }; var originalChatState = lastSlackState.ReplaceChatState(snoozedChatState); _snoozedChats[chatName] = originalChatState; }
private void SnoozeChat(SlackState lastSlackState, string chatName) { var snoozedChatState = new ChatState { Id = chatName, Unread = false, Mention = false }; var originalChatState = lastSlackState.ReplaceChatState(snoozedChatState); _snoozedChannelStates[chatName] = originalChatState; }
private void SnoozingServiceOnOnChannelSnoozeFinished(object sender, string channelId) { if (!string.IsNullOrEmpty(channelId)) { _lastSlackState.ReplaceChatState(_snoozedChannelStates[channelId]); _snoozedChannelStates.Remove(channelId); NextHandleState(_lastSlackState); } else { NextHandleState(_lastSlackState); } }
public async void Snooze(string chatName = null) { if (chatName != null) { SnoozeChat(_lastSlackState, chatName); NextHandleState(_lastSlackState); try { var soozeTimeout = TimeSpan.FromMinutes(SlackWindowsTray.Default.SnoozeChatTimeMinutes); await Task.Delay(soozeTimeout, _snoozeCancellationToken.Token); } catch (TaskCanceledException e) { } _lastSlackState.ReplaceChatState(_snoozedChats[chatName]); _snoozedChats.Remove(chatName); NextHandleState(_lastSlackState); CallbackIfAllSnoozeFinished(); } else { _allSnoozed = true; NextHandleState(new SlackState(TrayStates.AllRead)); try { var soozeTimeout = TimeSpan.FromMinutes(SlackWindowsTray.Default.SnoozeAllTimeMinutes); await Task.Delay(soozeTimeout, _snoozeCancellationToken.Token); } catch (TaskCanceledException e) { } _allSnoozed = false; NextHandleState(_lastSlackState); CallbackIfAllSnoozeFinished(); } }
private void SnoozeChat(SlackState lastSlackState, string chatName) { var snoozedChatState = new ChatState {Id = chatName, Unread = false, Mention = false}; var originalChatState = lastSlackState.ReplaceChatState(snoozedChatState); _snoozedChannelStates[chatName] = originalChatState; }