Version: 1.26.2832019 |
Author: PiratesIRC | Last Updated: Oct 10 2026, 20:25 UTC |
Automates channel visibility by hiding channels without events and showing those with events, based on EPG data and channel names. Optionally manages dummy EPG for channels without real EPG.
event-channel-managarr-latest.zip39cf0baChecksums:
MD5: b4db356095d5cf3a106502dc029bf478
SHA256: caa3a24791a4c5d59fac89094d4d7880759f3142c646344e5abdfafc0eb1a16f
| Version | Download | Built | Commit | MD5 | SHA256 |
|---|---|---|---|---|---|
1.26.2832019 |
Download | Oct 10 2026, 20:26 UTC | 39cf0ba |
b4db356095d5cf3a106502dc029bf478 | caa3a24791a4c5d59fac89094d4d7880759f3142c646344e5abdfafc0eb1a16f |
1.26.2831317 |
Download | Oct 10 2026, 13:24 UTC | 74eac27 |
0cebe7942aa53349955e196d1eb4d300 | 9bbe10164c745f4205e773f82860e587b2af88ce24c74dd0cb122b165132ed0a |
1.26.2821924 |
Download | Oct 09 2026, 19:31 UTC | 6f08f74 |
157e498b348e35facf0f5d5e621ca02f | 4aed1cf1d7fc0eee849ff1942febf7b0280d717312d8595826e8fa114bb48cc6 |
1.26.2821849 |
Download | Oct 09 2026, 18:55 UTC | d9bf8e5 |
da5135568d72864f89dcc2c90632e7d9 | 3b202d63877c3f4b48dc9baf17f44f28c726a835d8cb20c5a5c5f9cd9e8adfb2 |
1.26.2821323 |
Download | Oct 09 2026, 13:29 UTC | 033d920 |
3583102f4743b7acea5b0e858d779794 | c8f1cfae749a5c26760d2437f0987537b0b9c391eaccbbf9c2a47a81902dce69 |
1.26.2631853 |
Download | Sep 20 2026, 18:58 UTC | 69d4975 |
b59cca2653d554d3bcfbd2552dc223c2 | a0942551001be5c7c6ce7c89c9057745ad1afbbc1c47bb1057d64d86eaf8c1fc |
1.26.2621024 |
Download | Sep 19 2026, 14:07 UTC | ffe025a |
9b2acdc5cc6c1f3257bd0e6acf1e121d | e4ba279e9257849146359f2c0b94639c8e6146d09bbd4615788a0ee349f48f7d |
1.26.2561545 |
Download | Sep 13 2026, 15:50 UTC | dbd5ce4 |
8e5327a26b2176a6bbe45160cdbadeb2 | ff50dfca782d1480a0eb6a1ba0517d48b89a908abcea975f0e2079b699287151 |
1.26.2561458 |
Download | Sep 13 2026, 15:07 UTC | c7f2db2 |
8c46b0e67db215d8d8afd8668127a751 | d3dd739831cea45eb0fb47f2d587f91630538464c4b879cd879237bbfc9454d2 |
1.26.2490035 |
Download | Sep 06 2026, 01:00 UTC | cefbc81 |
e387645ae1b91cba2ec237e3f49e2a88 | fc5963545ab5d70d0cd2eb606ddc62de2a1562908a690849b752477a7cbba283 |
| Maintainers: PiratesIRC | Source: Browse Plugin |
Metadata: View full manifest
A Dispatcharr plugin that automatically manages channel visibility based on EPG data and channel names. It hides channels that currently have no event information and shows channels that do. An optional managed dummy EPG so the guide still shows something useful (event title during the window; “Upcoming at
[!TIP] New to Dispatcharr plugins? Start with the Dispatcharr Plugin Workflow guide. It explains what each plugin and tool does, where they overlap, and what order to use them in.
The badges count installations that send anonymous usage counts. See Anonymous usage counts.
Decides visibility from the channel name. A prioritised, fully customisable rule list decides what to hide and in what order, with the first matching rule winning. Rules cover a past date, a date too far ahead, a name that never carries a date at all, a name too short to describe an event, the wrong day of the week, a blank or placeholder name, and a pattern you supply yourself. A name carrying a clock time but no date is hidden once that event’s inferred end, plus a grace period you set, has passed.
Reads either the channel name or the stream name. Providers that leave the channel name fixed and put the game in the stream name are handled by switching one setting, or by listing just those channel groups in Stream Name Groups so other groups keep reading channel names. On Dispatcharr 0.32.0 or later such a group can also get its own guide source that reads the stream name.
Fills the guide for channels that have no EPG. An optional plugin-managed dummy
EPG source renders the event title during its window, Upcoming at <time>: <title>
before it and Ended at <time>: <title> after, in the viewer’s local time. Channels
whose names claim a different timezone get their own source rather than being pulled
back and forth. Three channel-name layouts are understood: the US form
(PPV EVENT 12: Title (MM.DD HH:MM AM/PM TZ), and bare numbered slots such as
07 - 8/14 7pm Broncos at Falcons), the Swedish pipe-delimited form, and the AT
form with the date after an @ (NHL 01: Kraken @ Red Wings @ 9 Oct 07:00 PM ET).
Gives a channel group its own guide source. Groups whose events are labelled in different timezones, or that need different durations or title patterns, can each be mapped to their own dummy EPG source. The plugin creates the source and seeds it from your settings, then leaves it alone so you can edit it in Dispatcharr. A group you do not map keeps the shared source.
Hides duplicates of the same event, keeping the lowest number, the highest number or the longest name, whichever you choose.
Scopes precisely. Monitor several channel profiles at once, narrow to named channel groups, skip channels by regular expression, and force chosen channels to stay visible whatever the rules say.
Runs on a schedule, at times you set in Dispatcharr’s own timezone, and optionally straight after each M3U refresh. A cross-process lock means at most one scan runs at a time across every worker, and a lock left behind by a dead process is broken automatically after fifteen minutes.
Reports what it did, and what it ignored. Every run writes a CSV giving the action, the reason and the rule for each channel. Channel groups that matched nothing, and regular expressions that matched nothing, are named in the result and in the CSV header, so a setting that is quietly doing nothing is visible rather than silent.
Previews safely. Dry Run reports what would change and writes the CSV without touching a single channel or creating any EPG binding.
Makes one outbound request, an anonymous usage count. The plugin talks to Dispatcharr’s database and to one HTTPS endpoint, plugin-stats.dpas.workers.dev, which receives the anonymous usage count. You can switch that off in settings. See Anonymous usage counts.
min_dispatcharr_version in plugin.json).Then read the user guide: the settings that decide scope are the ones worth getting right before the first applied run.
| Page | What is in it |
|---|---|
| User guide | Every setting and action, how the hide rules decide, the managed dummy EPG, client setup for Jellyfin, Plex and Emby, file locations, the CSV format, and troubleshooting by symptom |
| Changelog | Every released version with a link to its release notes |
| Development notes | The runtime model, code map, deploying, testing, adding a setting or action, the release procedure, and how to contribute |
| Documentation index | The above, described by who is reading |
The Visibility Changes and Active Installs badges count every install that leaves the “Share anonymous usage counts” setting (on by default) ticked and runs at least one action or scheduled scan. Visibility Changes counts the channels this plugin switched on or off in applied runs, the same transition count the run ledger records (see the user guide’s Run Ledger section). Dry runs and runs that change no channel are not counted. An M3U refresh sends nothing unless Auto-rescan after M3U refresh is on.
When an action or a scheduled scan finishes, the plugin sends this plugin’s Visibility Changes total and a random id for this plugin on this install to the plugin author’s counter at plugin-stats.dpas.workers.dev. It sends at most once an hour, or ten minutes after the last successful send when a run has just changed channel visibility. A run that finishes inside that gap is not sent later: the total goes out with the first later action or scheduled scan that is an hour past the last successful send, or with a later run that changes visibility once ten minutes have passed.
The server stores that id with the total and the date of the last report, and keeps them until this install unticks the setting and the delete succeeds, or until the plugin author removes them by hand. An install that stops reporting still counts toward Visibility Changes. The connection shows the server your public IP address; the server uses it only to limit abuse and does not store it in its database, though when an install first registers it keeps a salted one-way hash of it (of its /64 block for IPv6) for up to three days. Cloudflare, which hosts the server, keeps its own request logs. No names, channels, streams, URLs, providers or settings are sent. The figures are self-reported by installs and capped by the server, not verified.
What counts as an active install: an install that sent at least one report in the last 30 UTC days. A badge changes after the server’s hourly recount, which runs at the start of each UTC hour, and Shields may cache the badge for up to an hour more, so a new report can take up to about two hours to show.
The setting is the last one in the settings form, in its own section. Unticking it takes effect when the next action or scheduled scan finishes; the plugin then asks the server to delete this install’s figures. Once the server confirms the delete, the plugin forgets its id, and ticking the setting again later starts a new one; if the delete could not reach the server, the plugin keeps the id and retries. The plugin keeps that id and the timing of its reports in /data/plugin_stats/event-channel-managarr/ (install_id, sent, backoff, disabled, delete_backoff, lock). To start a new id, untick the setting and let an action run so the server deletes this install’s figures; deleting that folder while the setting is ticked leaves the old figures on the server, and the new id then sends the full total again, so the badge counts it twice.
Event Channel Managarr provides no television content of any kind. It supplies no channels, no playlists, no streams, no electronic programme guide data and no provider accounts, and it contains no list of where to obtain any of those. It bundles no reference data at all: everything it works on already exists in your Dispatcharr installation.
What it reads is channel names and the programme data already stored against your channels. It
parses event titles, dates and times out of those names to decide which channels currently
have an event. It never opens, reads, decodes, records, restreams or redistributes a stream, and
it never reads a stream URL. Its only outbound network request is the anonymous usage count to plugin-stats.dpas.workers.dev, which you can switch off in settings (see Anonymous usage counts). The update checker that
once called the GitHub releases API was removed in 1.26.2251616, along with the code behind it.
What it writes is confined to your own Dispatcharr database and its data directory: channel visibility in the profiles you select, bindings to a dummy EPG source it manages, and CSV exports, plus one small folder for the anonymous usage count, /data/plugin_stats/event-channel-managarr/ (see Anonymous usage counts). The main scan has a Dry Run that writes nothing and exports what it would do to CSV. Run that first. The other actions that change data (Run Now, Remove EPG from Hidden Channels, Clear CSV Exports, Cleanup Orphaned Tasks) each ask for confirmation before they act.
You are responsible for what you connect Dispatcharr to. Whether a particular provider, subscription, playlist or stream is lawful for you to use depends on your agreement with that provider and on the law where you live. Use only sources you are authorised to use. Nothing in this project is intended to enable, encourage or assist access to content you have no right to access.
All product names, channel names, network names, trademarks and registered trademarks mentioned in this project, or appearing in its examples, are the property of their respective owners. This project is an independent, community-built plugin. It is not affiliated with, endorsed by, or sponsored by any television network, broadcaster, streaming service or IPTV provider, and it is not affiliated with the Dispatcharr project beyond being a plugin written for it.
This plugin is free and always will be. If it saves you time and you would like to support the work, you can sponsor it at github.com/sponsors/PiratesIRC.
Sponsoring buys no priority, no private support and no influence over what gets built. Bug reports and pull requests are just as welcome from everyone.
Released under the MIT License. See LICENSE.