class ZoomSlack::Syncer

Attributes

config[RW]
process_detector[RW]
profile_updater[RW]

Public Class Methods

new(config, profile_updater: ProfileUpdater.new(token: config.token), process_detector: ProcessDetector.for_platform) click to toggle source
# File lib/zoom_slack/syncer.rb, line 5
def initialize(config,
               profile_updater: ProfileUpdater.new(token: config.token),
               process_detector: ProcessDetector.for_platform)
  self.config = config
  self.profile_updater = profile_updater
  self.process_detector = process_detector
end

Public Instance Methods

sync() click to toggle source
# File lib/zoom_slack/syncer.rb, line 13
def sync
  if process_detector.running?
    profile_updater.status in_meeting_status
  else
    profile_updater.status clear_status
  end
end

Private Instance Methods

clear_status() click to toggle source
# File lib/zoom_slack/syncer.rb, line 29
def clear_status
  Status.new(text: config.clear_text, emoji: config.clear_emoji)
end
in_meeting_status() click to toggle source
# File lib/zoom_slack/syncer.rb, line 25
def in_meeting_status
  Status.new(text: config.meeting_text, emoji: config.meeting_emoji, expires: config.meeting_expires_at)
end