Skip to content

Latest commit

 

History

History
120 lines (85 loc) · 3.23 KB

README.md

File metadata and controls

120 lines (85 loc) · 3.23 KB

Record On Calendar

An overcomplicated, but pretty smart program to record multitrack audio automatically according to Google Calendar events. Fully configurable.

Using FFMPEG / DirectShow (downloads runtime automatically).

Example config:

# █▀█ █▀▀ █▀▀ █▀█ █▄░█ █▀▀ ▄▀█ █░░
# █▀▄ ██▄ █▄▄ █▄█ █░▀█ █▄▄ █▀█ █▄▄

# Config file generated by Record on Calendar
version: 4.2.0 # Don't change this!

# Config file format is YAML. The RecOnCal will try to migrate it to new versions if updated.
# Made by Benedek Fodor (RedyAu) in 2022-2024

debug: false # Set to true to see additional messages on console.

##########

# CALENDAR

# ID of Google Calendar
calendar_id: = PLEASE PUT A GOOGLE CALENDAR ID HERE =
# API key for Google Calendar
api_key: = PLEASE PUT A GOOGLE API KEY HERE =

# Update frequency of calendar (minutes)
frequency: 30
# Start recording minutes earlier then calendar event start
earlier: 5
# Stop recording minutes later then calendar event end
later: 30
# Only record on events matching following regular expression (help: regexr.com)
# "." means record every event
regex: .

##########

# FILES

# Keep this number of latest recordings, delete older automatically (0 means never delete)
keep: 0

##########

# EMAIL

# Send email notification after last recording on a day
# true - enable; false - disable
dailyEmail: false
# Example for email recipients: [example@example.com, tim@apple.com]
dailyEmailRecipients: [""]
calendarEmail: false
calendarEmailRecipients: [""]

# Email client
smtpHost: null
smtpPort: null
smtpUser: null
smtpPassword: null

# Host a web status page on this port (~ to disable)
webPort: 8080

# Daily email content
dailyEmailSenderName: Record On Calendar
dailyEmailSubject: Today's recorded events
# Available replacements: [today list] [future list] [stat - success count] [stat - failed count] [time]
# Make sure to put 2 spaces before every line.
dailyEmailContent: |
  RecordOnCalendar has just finished recording the last event for today.

  Recorded events today:
  [today list]

  Next 10 events to record in the future:
  [future list]

  Successfully recorded [stat - success count] events so far. Failed [stat - failed count] times.

  Email sent at [time]


# Calendar email content
calendarEmailSenderName: Record On Calendar
calendarEmailSubject: Calendar updated
calendarEmailContent: |
  RecordOnCalendar has detected that future events have been changed in the calendar.

  Next 10 events to record are:
  [future list]

  Email sent at [time]

Example audio setup:

# DEVICES - TRACKS

# These are the audio devices the program detected in your computer.
# Please select which ones you want to record.
# If you remove an enabled device from the system, it does not get removed from here.
# New devices get added at the top.

# EXAMPLE:

# Example Microphone 1:   # Human readable name of the input (this shows up in your OS; don't change)
#   filename: John Guitar # You can specify a filename for this track. Leave on '~' to use the name of the device as track name.
#   record: true          # Set to true to record

LGPLite Stream Engine:
  fileName: ~
  record: false