view mod_pubsub_feeds/README.markdown @ 5509:ae007be8a6bd

mod_http_oauth2: Add Cache-Control and Pragma headers per by RFC 6749 These are mostly for the various Client-facing endpoints, so the chance of browsers being involved is slightly lower than with the User-facing authorization endpoint, which already sent the Cache-Control header. Thanks to OAuch for pointing out.
author Kim Alvefur <zash@zash.se>
date Fri, 02 Jun 2023 08:59:59 +0200
parents 3e30799deec2
children 1f8c9e27b625
line wrap: on
line source

---
summary: Subscribe to Atom and RSS feeds over pubsub
rockspec:
  build:
    modules:
      mod_pubsub_feeds.feeds: feeds.lib.lua
---

# Introduction

This module allows Prosody to fetch Atom and RSS feeds for you, and push
new results to subscribers over XMPP.

# Configuration

This module needs to be be loaded together with
[mod\_pubsub][doc:modules:mod\_pubsub].

For example, this is how you could add it to an existing pubsub
component:

``` lua
Component "pubsub.example.com" "pubsub"
modules_enabled = { "pubsub_feeds" }

feeds = {
  -- The part before = is used as PubSub node
  planet_jabber = "http://planet.jabber.org/atom.xml";
  prosody_blog = "http://blog.prosody.im/feed/atom.xml";
}
```

This example creates two nodes, 'planet\_jabber' and 'prosody\_blog'
that clients can subscribe to using
[XEP-0060](http://xmpp.org/extensions/xep-0060.html). Results are in
[ATOM 1.0 format](http://atomenabled.org/) for easy consumption.

# PubSubHubbub

This module also implements a
[PubSubHubbub](http://pubsubhubbub.googlecode.com/svn/trunk/pubsubhubbub-core-0.3.html)
subscriber. This allows feeds that have an associated "hub" to push
updates when they are published.

Not all feeds support this.

It needs to expose a HTTP callback endpoint to work.

# Option summary

  Option                 Description
  ---------------------- -------------------------------------------------------------------------
  `feeds`                A list of virtual nodes to create and their associated Atom or RSS URL.
  `feed_pull_interval`   Number of minutes between polling for new results (default 15)
  `use_pubsubhubub`      Set to `false` to disable PubSubHubbub

# Compatibility

  ----- -------
  0.9   Works
  ----- -------