Commit Graph

1040 Commits (80c9be0bafee5b6958960f8e5d7d54ca42ad4875)
 

Author SHA1 Message Date
Mike Lang 80c9be0baf cutter: Get archive cut working
Mike Lang 4c70878a53 cutter: Fix bug when no thumbnail set
Mike Lang 0164f9def8 schedulebot: Don't set groups before the run starts
This is mainly a problem with groups_by_shift which will be set
even for negative hours that aren't on the schedule.

This causes notification spam as people move in and out of groups.
Mike Lang 5c7061efd2 docker-compose: Have chat-archiver archive all watched channels
Mike Lang 260293d40d chat_archiver: Allow passing multiple channels on CLI
Mike Lang 91910c0972 chat_archiver: Fix misconfiguration where MAX_SERVER_LAG < MAX_DELAY
This leads to delayed JOIN/PARTs not being put in their proper batch
as it's already been closed. In fact, since each message is re-opening a batch from
more than MAX_SERVER_LAG seconds ago, each message becomes one batch.
Mike Lang 200d2df9ba chat_archiver: Add code support for archiving multiple channels at once
* Join every channel on connect
* Move the "wait for initial ROOMSTATE" logic into the main loop and make it per-channel
* Make batch keys (channel, time) instead of just time

For now the CLI doesn't actually allow you to run chat_archiver in this mode,
it always calls the implementation with a 1-element list of channels.
Mike Lang b050b71036 chat_archiver: Improve logging and monitoring by using unique client name more
Mike Lang 879fe2c70b thrimbletrimmer: Change default download type to smart
The new smart cut type avoids artifacting/playing issues that happen with fast cuts or multi-range rough cuts.

However it is new and experimental so we keep the old options available as backups.
Mike Lang 78d0f227e8 backfiller: Include channel name being backfilled in logs
Mike Lang 4e51c3d6b7 backfiller: Update node list from database more often
5min is a long time when we want to pull a node from circulation,
and it's a very lightweight operation. So let's say 30 seconds.
Mike Lang 51a2ef35cc schedulebot: Extend group-by-shift to allow multiple group members
ElementalAlchemist 8382e90659 Highlight the chapter description field as an error if it contains angle brackets
ElementalAlchemist f5c171f5ca Fix formatting
Mike Lang cbf3269001 thrimshim: Update default template names
Mike Lang d13a014bab schedulebot: Accept start timestamp with a trailing Z
Mike Lang 044dfb8084 Pin argh to avoid stupid breaking changes
Mike Lang 5a8bf99d12 schedulebot: Add ability to hard-code a group membership by shift
This feature is intended for implementing a "current wub wrangler" group, which:
a) Isn't on the schedule
b) Can't be put on the schedule as it would overlap with other duties
c) We don't want to announce in "starting/ending shift" messages.
Mike Lang 91d99bb22b Also build zulip_bots in CI
Mike Lang e146ed97db docker-compose: Add ability to give downloader an auth token
Mike Lang d636817b36 downloader: Add optional ability to authenticate when getting master playlist
Authenticating to a particular twitch account can give benefits, most notably not being served ads.
Mike Lang cedebff1ce Add LocalArchive upload backend
Mike Lang 5e7904dab3 wip: archive cut
Mike Lang 3ea0532838 wip:
Mike Lang c0e5f32459 Fix bad normalize function for fast_cut_range
Mike Lang ad10ad6ebf cutter: Remove no_transcode_check option
It's misleading and never useful, as the modern TranscodeChecker only checks
for videos with its exact upload location.
Mike Lang a201a2d4c9 cutter: Add support for smart cuts
Mike Lang dce0b3a5fc Update docker-compose defaults
with values that are common (not for a particular year or node) but aren't secrets.
Mike Lang ab3a89e6a6 Pin grafana version
This is required due to grafana changes invalidating our old dashboards.
We don't have time to fix them right now.
Mike Lang f324ef23cf backfiller: Fix critical issues with backfilling extras
Mike Lang fff01876a9 docker-compose: Backfill emotes directory
Mike Lang 9f523c65cd backfiller: Allow backfilling of non-segment directories
These are referred to as "extras" and all files in all subdirectories are backfilled
if not present.
Mike Lang 4fb039d7d9 restreamer: Expose an endpoint for listing files that aren't segments
Mike Lang 76c9208be5 Move chat_archiver atomic_write() to common for re-use
Mike Lang 8220c87258 Fix zulip_bots bugs to get them working in package
Mike Lang 491945cc24 docker-compose: Run zulip bots
Mike Lang de521c4da9 schedulebot: Take timestamp string instead of epoch
Mike Lang 627eda5e74 schedulebot: Remove memes
Mike Lang 05d5a190fc Allow conf_file to be the JSON data directly
Easier for containers
Mike Lang 8813068c9d Make zulip bots an actual package
Mike Lang 0fde659d15 tootbot: Reconnect on network connection loss
Mike Lang e551baaf17 tootbot: Fixes to get it working
Mike Lang e224f8b85c tootbot: html converter
Mike Lang e12191686f Implement twitch bot that notifies zulip on recieving a twitch DM
Mike Lang e9b99a6774 schedulebot: Move generic zulip api code into its own file
for re-use
Mike Lang 9df51e80fb add smart cut to restreamer
Mike Lang c5c8b3997b change how timestamps work again, so PCR and PTS are *both* set to start time
Mike Lang 58b4541306 Implement smart cuts
Mike Lang fa1603e99a fixts: Only use PCR to set offset, add 33ms to end time
Mike Lang eaf3ed2e54 fixts first attempt