buzz-rss/base-config.yaml
eddy dff304ba56 v1.3.1: filter-score (titel 2x + summary 1x, drempel 2)
- losse 1-hit in summary volstaat niet meer: 'ns-trein' in een
  rechtszaak-artikel (stenengooier) telt als 1 cluster en wordt geblokkeerd
- cluster-aware teller: aaneengesloten matches (NS-trein, openbaar vervoer,
  pdf) samenvoegen
- bus(?:sen)? suffix: 'Meer bussen naar TU' komt terug
- root-cause config-corruptie: re.sub-replacement de-escaped \\b naar \b
  (YAML-backspace); nu regel-bewerking zonder escape-processing
2026-09-05 20:32:20 +02:00

26 lines
No EOL
2 KiB
YAML

# Feed update interval in minutes
update_interval: 60
# Maximum backoff in minutes when failing to fetch feeds (defaults to 5 days)
max_backoff: 7200
# How many feeds to poll in parallel? Set to 0 to disable limit.
poll_parallelism_limit: 10
# The time to sleep between send requests when broadcasting a new feed entry.
# Set to 0 to disable sleep or -1 to run all requests asynchronously at once.
spam_sleep: 2
# The prefix for all commands
# It has to be prefixed with ! in matrix to be recognised
command_prefix: "rss"
# Default post notification template for new subscriptions
notification_template: "New post in $feed_title: [$title]($link)"
# Should non-admin users be allowed to set regex filters to drop posts from feeds?
# Regexes are dangerous and may lead to DoS attacks.
allow_filter: false
# Exclude paywalled articles (Telegraaf/NHD markeren dit met <premium>true</premium>)
exclude_paywalled: true
# Global match filter (whitelist): applies to ALL feeds in this instance.
# A post is ONLY sent when the regex matches the title OR the (HTML-stripped) summary.
# Set it live with `!rss set-filter <regex>`. Empty = send everything.
match_filter: "(?i)\\b(?:ns|arriva|qbuzz|connexxion|cxx|transdev|keolis|ret|gvb|ebs|htm|syntus|breng|u-ov|allgo|flixbus|blauwnet|r-net|valleilijn|waterbus|eurostar|thalys|randstadrail|gvu|ov)\\b|\\b(?:bus|tram|metro)(?:halte|haltes|lijn|lijnen|station|stations|verkeer|net|staking|sen)?\\b|\\btrein(?:en|verkeer|stel(?:len)?|staking|ongeluk|reizigers?|station|stations)?\\b|\\b(?:spoorweg|spoorbaan|spoorlijn|spoorverkeer|spoorwegovergang|spoorstoring|perron|perrons|overweg|overwegen|seinstoring|wisselstoring|sein|ontsporing|ontspoord|spoorstaking)\\b|\\b(?:openbaar vervoer|dienstregeling|reizigers?|inchecken|uitchecken|pont|ponten|lightrail|pendelbus|shuttlebus)\\b|\\b(?:ov-chipkaart|chipkaart|ovpay|ov-pay|reisproduct|studentenreisproduct|vervoersbewijs|vervoerbewijs|opwaarderen)\\b|\\b(?:ov-staking|conducteursstaking)\\b"
# Users who can bypass room permission checks
admins:
- "@user:example.com"