rss2irc: watches an RSS/Atom feed and writes it to an IRC channel

[ bsd3, irc, program ] [ Propose Tags ]

This bot polls a single RSS or Atom feed and announces updates to an IRC channel, with options for customizing output and behavior. It aims to be a simple, dependable bot that does its job and creates no problems.

Usage: rss2irc FEEDURL [BOTNAME@IRCSERVER/#CHANNEL] [OPTS]
Options:

  -p PORT  --port=PORT                   irc server port (default 6667)
           --ident=STR                   set the bot's identity string (useful for contact info)
           --delay=N                     wait for N minutes before starting (helps avoid mass joins)
  -i N     --interval=N                  polling interval in minutes (default 5)
           --idle=N                      announce only when channel has been idle N minutes (default 0)
  -m N     --max-items=N                 announce at most N items per polling interval (default 5)
  -r N     --recent=N                    announce up to N recent items at startup (default 0)
           --announce=topnew|allnew|top  which items to announce (default: topnew)
           --no-title                    don't show title (title is announced by default, up to 100 chars)
  -a       --author                      show author (up to 50 chars)
  -d       --description                 show description (up to 300 chars)
  -l       --link                        show link URL (up to 200 chars)
  -t       --time                        show timestamp (up to 50 chars)
  -e       --email                       show email addresses (stripped by default)
  -h       --html                        show HTML tags and entities (stripped by default)
           --dupe-descriptions           show identical consecutive descriptions (elided by default)
           --replace="OLD/NEW"           replace OLD with NEW (regexpr patterns)
  -n N     --num-iterations=N            exit after N iterations
  -q       --quiet                       silence normal console output
           --debug                       do not connect to irc (same as no irc argument)
           --debug-irc                   show irc activity
           --debug-feed                  show feed items and polling stats
           --debug-xml                   show feed content
           --debug-http                  show feed fetching progress

For example, to announce Hackage updates:

rss2irc http://hackage.haskell.org/packages/archive/recent.rss mybot@irc.freenode.org/#haskell

Release notes for 0.4.1, 2009-09-25:

  • fix release notes issues

Release notes for 0.4, 2009-09-25:

  • wait for server connection confirmation before JOIN command. Problem was observed on irc.quakenet.org since it refuses to join or any commands before connection is confirmed by server. (Radoslav Dorcik)

  • feed polling now recovers from transient failures

  • can poll a local file: uri as well as remote uris. Works if the uri is of the form "file:FILE", at least. Useful for testing and eg for announcing a feed generated from a darcs posthook.

  • more robust new item detection, with some alternate strategies available via the --announce option. The choices are: topnew - new unseen items at the top (default, good for most feeds); allnew - new unseen items anywhere; top - any items above the previous top item.

  • --idle option, waits for N minutes of channel idle time before announcing

  • limit individual field sizes, preventing too many irc messages per item. Most announcements should now fit in one irc message, and pretty much all should fit in two.

  • misc. output improvements: elide identical consecutive item descriptions, split long announcements on a word boundary, try to complete a split announcement within a batch, better whitespace handling

  • logging improvements

  • --delay now takes minutes, not seconds

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.1, 0.2, 0.3, 0.4, 0.4.1, 0.4.2, 1.0, 1.0.1, 1.0.2, 1.0.3, 1.0.4, 1.0.5, 1.0.6, 1.1, 1.2
Dependencies base (>=3 && <5), extensible-exceptions (>=0.1 && <0.2), feed (>=0.3 && <0.4), haskell98, HTTP (>=4000.0.3 && <4000.1), irc (>=0.4 && <0.5), mtl (>=1.1 && <1.2), network (>=2.2 && <2.3), parallel (>=1.1 && <1.2), regexpr (>=0.5 && <0.6), split (>=0.1 && <0.2), strict-concurrency (>=0.2 && <0.3), tagsoup (>=0.6 && <0.7), time (>=1.1 && <1.2) [details]
License BSD-3-Clause
Author Don Stewart <dons@galois.com>, Simon Michael <simon@joyful.com>
Maintainer Simon Michael <simon@joyful.com>
Category Network
Home page http://hackage.haskell.org/package/rss2irc
Source repo head: darcs get http://joyful.com/repos/rss2irc
Uploaded by SimonMichael at 2009-09-26T23:44:38Z
Distributions Debian:1.2
Reverse Dependencies 1 direct, 0 indirect [details]
Executables rss2irc
Downloads 11773 total (43 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs not available [build log]
All reported builds failed as of 2016-12-31 [all 6 reports]