#118 Option to filter out certain kinds of notifications a month ago

Ticket created by ~acegiak on ~tsileo/microblog.pub

Could we perhaps have a config option somewhere to filter out notifications for events like "unfollowed you" "blocked you" "unshared your post"? Most other social network UX doesn't include those messages in the user facing feed cause they're just kind of random and depressing?

#49 Feat: allow like/reply/share content from non-fedi sources 2 months ago

Comment by ~acegiak on ~tsileo/microblog.pub

Heya, Sorry for the late reply, I've been travelling. I think option number two makes sense. It might also make it easy to allow subscription to h-feed and rss content in the future?

regards, Ash

On Sun, Jan 1, 2023 at 8:39 AM ~x3b0b outgoing@sr.ht wrote:

For what it's worth: Since all the appropriate microformats markup for IndieWeb replies/likes/favorites/reposts go inside the h-entry, I had previously concluded that this should be possible already - it just isn't convenient, because without any special UI for it, you have to write the HTML yourself. And, as you alluded to, it currently appears as an AP note (or article, presumably) with a link in it. Which, of course, is an entirely reasonable thing to post, but doesn't convey the same meaning.

I had already been meaning to test that conclusion, so I did: https://bw3.dev/o/7e024e0ff6f34dee8c93e976887b899c

If you go to the target article (and enable javascript), you can see that it correctly picked my mention up as a like.

That said, I'm all for lowering the barrier of "you can do it, but you have to write your own markup" if you are happy with your idea for how.

As for the visibility option, I can definitely see how this and other purposes might make it nice to be able to say "don't send this to my followers" without also having to say "don't let anyone I didn't mention see it." I had to look at some posts and how-tos to try to be sure I was remembering this correctly, but while favorites/likes/reactions in the Fediverse are public information, in that you can look and see who has liked a post; but unlike boosts/reposts/replies, they don't turn up in your followers' timelines. So on top of AP not supporting such actions on non-AP objects, what I described above is inherently more visible to your followers than the equivalent AP action.

After doing some more tests, I've now thoroughly confused myself as to whether or not I think it potentially makes sense to want to skip sending a post to the AP stream without also making it unlisted, partly because my thoughts on that bleed over into two completely separate (but slightly related) enhancements I've been thinking about trying to implement myself.

-- View on the web: https://todo.sr.ht/~tsileo/microblog.pub/49#event-219475

-- regards, Ashton McAllan http://acegiak.net

#49 Feat: allow like/reply/share content from non-fedi sources 3 months ago

on ~tsileo/microblog.pub

~acegiak I am starting to think more about this, and I would like to get your feedback.

Since there's no way in ActivityPub to announce/like/reply to non-AP object, I think there's 2 way to handle this:

  1. Allow to create IndieWeb only objects, a webmention would be sent, the URL would be public with the proper mf2 ; This would not get sent to followers/be IndieWeb only

  2. Create AP objects, but the "target URL" would need to be in the object content + a custom UI field allowing to set the interaction type for the URL ; This would allow to (optionally) federate the object as an AP note, e.g. a post linking to URL will be formatted as a mf2 like, but Mastodon won't understand this is a like.

I think (2) would be easier to implement, and would make sense. Along with a new "visibility option", we could also have the option of creating the note without sending it followers (i.e. make a "like-of" that will be understood by the target website, without appearing in the AP stream).

Any feedback/ideas?


#93 Performance issues. 3 months ago

Comment by ~acegiak on ~tsileo/microblog.pub

Yeah I'm not sure the 30 day prune had ever run? I'm following 115 people and followed by 500ish.

2022-12-20 19:56:04.245 | INFO | app.prune:prune_old_data:23 - Pruning old data with INBOX_RETENTION_DAYS=15 2022-12-20 19:56:09.358 | INFO | app.prune:_prune_old_incoming_activities:48 - Deleted 57595 old incoming activities 2022-12-20 19:56:10.402 | INFO | app.prune:_prune_old_outgoing_activities:64 - Deleted 52684 old outgoing activities 2022-12-20 20:00:52.576 | INFO | app.prune:_prune_old_inbox_objects:111 - Deleted 75045 old inbox objects

Definitely fixed it!

On Wed, Dec 21, 2022 at 4:11 AM ~tsileo outgoing@sr.ht wrote:

Hey, have you already run the pruning task (see https://docs.microblog.pub/user_guide.html#pruning-old-data)? (be sure to backup fist in case it goes wrong).

I think that can be the cause of the slow loading time for the admin. The "locked DB" issue is related to scaling. Basically, only one connection can write data at the same with SQLite, after waiting for a bit, it can raise that issue.

And how many people are you following? (to get a sense of how objects you may receive).

I will see how the processing can be tweaked to reduce the likelihood of getting that error. But I don't think CPU/RAM are the bottleneck.

-- View on the web: https://todo.sr.ht/~tsileo/microblog.pub/93#event-218169

-- regards, Ashton McAllan http://acegiak.net

#93 Performance issues. 3 months ago

Ticket created by ~acegiak on ~tsileo/microblog.pub

I'm currently experiencing strange issues where it often takes several minutes to load the admin Stream page despite CPU and memory usage on the machine appearing fine. Im also often getting an internal server error when performing some actions with a "database is locked" error in the logs. Could it be sqlite that is the bottleneck? I'm running on a Amazon t2.small instance which, like I said seems to be fine for CPU and ram but maybe has an issue cause it's single core?

#69 Display gif videos in a more gif-y way. 3 months ago

Comment by ~acegiak on ~tsileo/microblog.pub

Ah that's awesome! What's the behaviour for mouseover events on mobile like? At the moment I've got a solution that is just autoplaying regardless of mouseover which I'm quite liking especially because I'm mostly on mobile.

On Sun, Dec 4, 2022 at 5:22 AM ~tsileo outgoing@sr.ht wrote:


I just pushed a test to enable a "GIF mode" for "videos without audio and small duration" (using JS).

It works like Mastodon:

  • show a small "GIF" overlay
  • disable controls
  • play in a loop on mouse over

Let me know how it goes!


-- View on the web: https://todo.sr.ht/~tsileo/microblog.pub/69#event-216393

-- regards, Ashton McAllan http://acegiak.net

#73 Media Proxy Key Error? 4 months ago

Comment by ~acegiak on ~tsileo/microblog.pub

Ok so I installed that update and things were going good and then after a while started running into the same issue again. Stopping the MBP process and restarting it makes it start working again. It might be, seems to me, that it degrades over time?

On Monday, November 28, 2022, ~tsileo outgoing@sr.ht wrote:

I tried to enable an additional retry on the HTTP client, we will see if that helps.

-- View on the web: https://todo.sr.ht/~tsileo/microblog.pub/73#event-215808

#73 Media Proxy Key Error? 4 months ago

Ticket created by ~acegiak on ~tsileo/microblog.pub

Following Error throws 500 when trying to serve media proxy sometimes?

INFO: - "GET /proxy/media/19331/y6dQF8y8LBmZt9GG9UcoHgULva14sWgZZcVsZxzxtKA%3D/aHR0cHM6Ly9jZG4ubWFzdG8uaG9zdC9tYXN0b2RvbmFydC9tZWRpYV9hdHRhY2htZW50cy9maWxlcy8xMDkvNDIyLzgxMC8zMzcvMzEwLzM3NC9vcmlnaW5hbC9iMGVmMjQ4YmIzMmMzNTVmLmpwZWc%3D/740 HTTP/1.1" 500 Internal Server Error ERROR: Exception in ASGI application Traceback (most recent call last): File "/home/ubuntu/.cache/pypoetry/virtualenvs/microblogpub-w8qPhqp5-py3.10/lib/python3.10/site-packages/h2/connection.py", line 224, in process_input func, target_state = self.transitions[(self.state, input)] KeyError: (<ConnectionState.CLOSED: 3>, <ConnectionInputs.SEND_HEADERS: 0>)

#69 Display gif videos in a more gif-y way. 4 months ago

Comment by ~acegiak on ~tsileo/microblog.pub

oh wow that's weird. I guess if we wanted to we could check to see if there's an audio stream in the file's metadata in the backend but I'm personally not averse to putting js on just my own personal templates.

On Wed, Nov 23, 2022 at 5:08 AM ~tsileo outgoing@sr.ht wrote:

That's a good question, I took a quick look and here is an example attachment appearing as gif on Mastodon:

    "attachment": [
            "blurhash": "UKEx|k-o%2xZMct7xuxZJBELIUoL0LE1WBR*",
            "height": 240,
            "mediaType": "video/mp4",
            "name": null,
            "type": "Document",
            "url": "https://files.mastodon.social/media_attachments/files/109/367/493/509/868/324/original/328cc722e95f02ce.mp4",
            "width": 360

There's nothing in there giving a hint.

It looks to me that:

  • if the video has sounds, it does not auto-play
  • if the video has no sounds, it's considered as a gif, it always plays on hover, with looping enabled

It looks like it would be possible to implement something with JS (that would be optional) that implements something similar to Mastodon (i.e. if no sound, autopllay in loop mode on hover and hide the control bar).

-- View on the web: https://todo.sr.ht/~tsileo/microblog.pub/69#event-215088

-- regards, Ashton McAllan http://acegiak.net

#58 option to seperate incoming shares from notes/articles 4 months ago

on ~tsileo/microblog.pub

Thanks for the clarification, ~acegiak!

~tsileo, https://todo.sr.ht/~tsileo/microblog.pub/37 sound good to me! Then it would be possible to write some filter that takes actors from a list stored somewhere for which their shares should not be displayed, right?