Relaxing treatment of non-notes by Mastodon
-
Sam Sethi :pc2red: ⁂replied to Evan Prodromou on last edited by
@evan sadly its chicken and egg. If we publish with the listen verb and no apps read/render it then. our users will ask why their activity was not published. So we are forced to use the lowest common denominator aka note so it is read now by AP clients. Very happy to experiment as I know we are a new use case.
-
Emelia 👸🏻replied to Sam Sethi :pc2red: ⁂ on last edited by
-
André Menrathreplied to julian on last edited by [email protected]
@julian @renchap @pfefferle @mike @michael @hongminhee
Same for #CastoPod: Mastodon was/is the reason they actually send the creation of a `Ǹote`, which essentially contains the name, summary and the link of their well defined PodcastEpisode ActivityStreams object. In fact adding a new supported object type to Mastodon is a one-liner and I was a bit sad that not even a issue got opened. But I hope we can overcome such hurdles in the near future!
-
Sam Sethi :pc2red: ⁂replied to Emelia 👸🏻 on last edited by
@thisismissem @evan 100% agree but how?
-
Emelia 👸🏻replied to Sam Sethi :pc2red: ⁂ on last edited by
@samsethi @evan I think this links to the various efforts: https://github.com/w3c/activitypub/issues/430
-
infinite love ⴳreplied to Emelia 👸🏻 on last edited by
@thisismissem @julian @pfefferle @manton @samsethi @renchap @andypiper I don't think "capability negotiation by nodeinfo software version" is a good idea or at all desirable.
-
infinite love ⴳreplied to Emelia 👸🏻 on last edited by
@thisismissem @pfefferle @hongminhee @julian @renchap @mike @michael hot take, but mastodon should be able to convert *anything* into a status "simply" by taking name/summary/content if present. https://www.w3.org/TR/activitystreams-core/#h-text-representations
-
Emelia 👸🏻replied to infinite love ⴳ on last edited by
@trwnh @julian @pfefferle @manton @samsethi @renchap @andypiper
It's a stop gap solution until we have something better.
-
@trwnh @thisismissem @pfefferle @hongminhee @julian @renchap @mike @michael but one thing I'd note: I think objects should always degrade gracefully into something note like, but that's not the case for activities
Imagine I used a federated last.fm like application. If Mastodon converted as:Listen to a note, my followers would probably get pissed off about the "Now listening to: X" statuses every 2 minutes -
@trwnh @hongminhee @julian @michael @mike @pfefferle @renchap @thisismissem back in pump.io these things were relegated to your "minor feed". Absent an equivalent, I think implementations *should* suppress them. If your use case isn't amenable to this behaviour, you should probably consider if an activity is appropriate for it
-
@erincandescent @julian @mike @hongminhee @thisismissem @pfefferle @michael @renchap
i think this is on the user/client to not publish/deliver every single scrobble to all followers. mastodon should still be able to render arbitrary activities if there is a text repr of them.
-
@trwnh @julian @mike @hongminhee @thisismissem @pfefferle @michael @renchap I think publishing every scrobble to my followers is how I expect federated last.fm to work. It's on recipients to hide these things
-
@erincandescent @julian @mike @hongminhee @thisismissem @pfefferle @michael @renchap
a combination of `streams` and followable Collection-actors is how i’d approach this. we don’t need to be stuck in a paradigm of sticking every activity into one outbox, nor should every activity always be sent out to all followers.
-
@trwnh @hongminhee @julian @michael @mike @pfefferle @renchap @thisismissem I think the activity Vs object distinction is very important because it models a semantic thing that by default objects are important but most activities are not
-
@erincandescent @julian @mike @hongminhee @thisismissem @pfefferle @michael @renchap
this is like saying “i’m going to email every scrobble to my entire contact address-book and it’s their job to filter out such emails”
-
Der Pepe (Hubzilla) ⁂ ⚝replied to julian on last edited byIf I remember correctly, Mastodon simply implemented a link to the source as the ‘solution’ for as:Article. This is not what users expect, it is not what the author had in mind, but it is probably considered ‘sufficient’ by Mastodon.
Mastodon shouldn't ‘adapt’ to other services either, but it should implement the AP standard properly. The way it has been handled so far, it feels rather arrogant. -
@erincandescent @julian @mike @hongminhee @thisismissem @pfefferle @michael @renchap
i don’t find this to be the case. in this case the “post” is not the Audio object, it’s that you Listened to it. it’s actually far more common for the activity to be more important than the object.
-
@trwnh @julian @mike @hongminhee @thisismissem @pfefferle @michael @renchap we don't really have a way of knowing what activities our followers are interested. In fact in the general case that's impossible; if I started using a music suggestion system based upon my friends listening habits today, I'd like to be able to use their historic listening data that they have been broadcasting to seed it.
Alternatively, consider that I decide to make my listening history public and it hits a relay. My as:Listen activities are going to absolutely carpet bomb the federated timeline.
Aside from the Annointed Two (Create, Announce) we really need to treat most activities as ephemeral and largely unimportant -
@trwnh @hongminhee @julian @michael @mike @pfefferle @renchap @thisismissem the idea that every activity should turn into an entry in my home feed is utterly ludicrous. Imagine if this applied to Like or EmojiReact
-
@erincandescent @julian @mike @hongminhee @thisismissem @pfefferle @michael @renchap
This is why we need to allow people to specifically follow certain Collections which are exposed as streams. It’s also why we need to allow people to send activities to arbitrary audiences which might not include all followers.
If a relay is set up for the purpose of aggregating Listen activities and you follow it, that’s on you. You asked for it.
Create is the exception, not the rule