#

A quick update to PHP-MST: you could edit posts but I forgot to have it refresh updated posts from feeds you have subscribed to. Fixed!

#
 My rssCloud server written in PHP is live!

It unashamedly draws on Andrew Shell's for inspiration but that's not such a bad thing as it maintains a degree of consistency.

Mine differs in one key way: subscriptions are not removed after 25 hours. Instead you send a cancel request which I have since discovered is how WebSub operates.

I am planning on adding a feature to auto-remove a subscription after X failed notification attempts. I also need to set it up to remove older events from the log but haven't yet decided on a suitable retention period.

I have been testing it with a custom instance of PHP-MST and think I've worked out most of the kinks and catered for most eventualities. I may switch my main instance to use it.

It's been great fun to work on and only taken a few days to put together — it's actually a pretty simple app and could be even simpler if I didn't include forms for manual requests.

The code is available on GitHub. It requires a MySQL database and accounts, I've included the SQL statements to generate the necessary tables.

#
 The ability to reply to posts was something I wanted to add to PHP-MST from the beginning (and the wider ecosystem) but needed to flesh out the rest of the functionality beforehand.

Today I felt that things were in a suitable position to implement it.

As posts in 'My Status Tool' instances are distributed by RSS there needed to be a way to indicate which post was being replied to. I felt that having an extra item level element was probably the best way to implement this so created a new 'mst' namespace. The namespace defines a single, optional item level element mst:reply which holds the permalink of the target post:

<mst:reply>https://colinwalker.blog/php-mst/page.php?t=1234567890</mst:reply>

When fetching a feed, the tool will check for this element and write it to the local storage file. Then, when displaying the timeline, it pulls that out along with the replies info from the local posts.

When logged in, each item will have a 'reply' icon next to it. An indicator of which items have replies will always be visible:

PHP-MST replies

Clicking the reply icon automatically adds the item permalink to a hidden input and takes you to the post form.

I'm thinking about refining this further but it works well enough for now.

#
 A few new updates for PHP-MST:

  • notify path dynamically built to ensure it's correct regardless of installation path (subdomain, root, sub-directory)
  • when subscribing to a feed items are added immediately rather than waiting for a notification
  • When unsubbing from a feed the related items are removed from the timeline

As always, keep an eye on the changelog.

#
 The updated version of PHP-MST is now available on GitHub including revised item storage, admin options, and post editing.

I'm thinking about adding support for RSS enclosures so that you could effectively have a podcast via the tool. This is also, technically, the last element required to fully support textcasting, although I would also need to include source:markdown elements in the feed.

Update: I added the source:markdown elements to the feed earlier and it all appears to be working okay. Code re-use is a wonderful thing.

Colin Walker Colin Walker colin@colinwalker.blog