Replying to micro.blog posts, directly from my blog
Lately I’ve started to use micro.blog more actively again. As part of that I’ve also started to reply more to posts and have stimulating conversations. That made me realise that those conversations might be of interest to have on my own site, so I should really try to set up my system so that I can reply to micro.blog posts directly from my blog. Yesterday some free time opened up during the evening so I gave it a go and it more or less works.
So first off, here’s my setup. I self host a WordPress blog. It uses a theme that I’ve made myself and quite a few plugins that I didn’t make. The important plugins in this context should be IndieWeb, Post Kinds, Semantic-Linkbacks and probably most important Webmentions.
There’s a help page on micro.blog about called ”Replies and @-mentions” that tells us that:
For an external blog post that is a reply to a specific Micro.blog post, the external blog can send a Webmention to Micro.blog. As long as the sending blog is associated with a Micro.blog user, that post will be copied to Micro.blog as a reply and threaded into the conversation. Micro.blog’s Webmention endpoint is: https://micro.blog/webmention
So that’s what I tried to set up. I created an iOS Shortcut for my iPhone and iPad that I can trigger from the ”Share” menu in the micro.blog app that creates the hyperlink and fills in the @username-part. It then asks me for my reply as input text and finally sends it off to my blog.
On the Mac I don’t have quite such a nice automation workflow yet. Instead I just have a TextExpander snippet to fill in the hyperlink a bit faster.1
I also mark up the hyperlink with
class="u-in-reply-to", though from the help text I suspect that’s not fully necessary.
Getting things working
The thing I knew I had to tweak was the part about how ”as long as the sending blog is associated with a Micro.blog user”. I’ve had multiple people reporting to me before that my webmentions shows up as sent by anonymous rather than as me, so I figured I had to sort that out first. To do that I used the Indiewebify.me service and checked how well my blog did the ”Become a citizen of the IndieWeb” and ”Publishing on the IndieWeb Level 2 – 1. Mark up your content (Profile, Notes, Articles, etc…) with microformats2” parts.
They showed that I had some tweaking to do, mostly because I had mistakenly only marked up part of my h-card as such so a lot of things where missing.
When that seemed to work I made a test reply to one of my own posts on my blog and the webmention had my name attached to it, so that seemed like progress.
I then sent out a post asking for people willing to receive some test replies and John (@johnjohnston) and Ron (@ronguest) where kind enough reply. The first proper test almost worked. It did show up a a reply but it identified as sent by blog.henrikcarlsson.se instead of by @MrHenko, so some part of micro.blog identifying me as me didn’t work.
So I dug around some more and realised that I had inputed http://henrikcarlsson.se as my web site in micro.blog’s account settings. While that is technically true, as my blog posts comes from the subdomain http://blog.henrikcarlsson.se, so I tried changing to the latter in micro.blog and that worked. My replies on my blog arrives properly threaded in micro.blog and properly attributed to @MrHenko.
One glaring problem remained though. Every reply from me got double-posted. I assume that is because I technically do send two things to micro.blog. A webmention from the blog post and then the post itself because it shows up in my RSS feed that is used to feed micro.blog.
My solution was to post my replies in a special ”interactions” category that I use the Ultimate Category Excluder plugin to exclude from my main RSS feed. And with that in place things more or less worked as intended.
Some things that still need tweaking
Every time I make a new reply in a thread in a micro.blog conversation, that’s a new post on my blog.2 That is in itself not a big problem but the curious part is that every reply that somebody else makes in the thread results a webmention/comment to multiple of the posts that I’ve made that has been threaded in that particular conversation. So I get duplicate comments, but on differens posts on my blog.
Right now I deal with it by only approving the comment to the earliest post I’ve made in the thread but that doesn’t really quite work since my subsequent comments doesn’t show up as comments on my own first post on my blog. So I’ll need to look more into this.