Pushl is a tool that converts updates published via Atom to WebSub and Webmention. It is intended to be run periodically from a cron job or similar, and adds basic IndieWeb-style push notification interoperability to statically-published websites (or CMSes which behave in the style of static publishing, such as Publ).
Implementation Home Page URL: http://github.com/PlaidWeb/Pushl
Source Code repo URL(s) (optional): http://github.com/PlaidWeb/Pushl
- 100% open source implementation
Programming Language(s): Python
Developer(s): fluffy
Implementation Classes (Sender and/or Receiver): Sender
MUST
- Discovery Test #1
- Discovery Test #2
- Discovery Test #3
- Discovery Test #4
- Discovery Test #5
- Discovery Test #6
- Discovery Test #7
- Discovery Test #8
- Discovery Test #9
- Discovery Test #10
- Discovery Test #11
- Discovery Test #12
- Discovery Test #13
- Discovery Test #14
- Discovery Test #15
- Discovery Test #16
- Discovery Test #17
- Discovery Test #18
- Discovery Test #19
- Discovery Test #20
- Discovery Test #21
MUST
- Accepts HTTP 200 response as a success
- Accepts HTTP 201 response as a success
- Accepts HTTP 202 response as a success
SHOULD
This theoretically works, but the 10-minute testing window on webmention.rocks makes this very difficult to test successfully. My logs show it doing the right thing, however.
SHOULD
If an entry disappears from a feed, Pushl will send webmentions against the links found in the previously-cached version of the entry; if the CMS reports the old item as 410 GONE then this will appear as a proper deletion to the recipient. As most CMSes don't support 410 GONE this will usually appear as an update instead.
- The sender avoids sending a Webmention to a loopback address (SHOULD)
This implementation has also implemented the following extensions.
- Salmention
- Vouch
- Private Webmention
- Other:
link rel
whitelist/blacklist - Other: forced synthetic mentions (for fed.brid.gy et al)