Embed Notice
HTML Code
Corresponding Notice
- Embed this notice
narcolepsy and alcoholism :flag: (hj@shigusegubu.club)'s status on Tuesday, 28-Nov-2023 23:36:33 JST narcolepsy and alcoholism :flag:
@NEETzsche @lain @Moon >These are actual Audio documents.
There are no audio documents, if you are referencing an actual Audio document there should be a Create activity for it, if none can exist IMO you should use Link object instead.
>The idea that the Audio document must link to a literal audio file has already been hashed out and the conclusion is that it doesn’t. I’m not discussing this further.
I'm not saying it should reference a file, i'm saying it should reference whatever you want to reference in a proper way
>It’s literally in the spec that this is how it should work. It’s not spam anymore than anything else is.
URL should point to the activity/object itself (or rather representation of it). Target/Object should be what it is referencing. So like
{
"@context": "https://www.w3.org/ns/activitystreams",
"summary": "Sally listened to Megadeth - Hangar 18",
"url": "https://instance.tld/objects/listens/1234", // <-- reference to Listen activity itself
"type": "Listen",
"actor": {
"type": "Person",
"name": "Sally"
},
"object": { // <-- reference to what was listened (could be "target" instead IMO)
"type": "Link",
"rel": ["external", "nofollow"],
"href": "https://www.youtube.com/watch?v=B-oU2xlViRQ"
}
}
Much like
{
"@context": "https://www.w3.org/ns/activitystreams",
"summary": "Reprööting to post 1234",
"url": "https://instance.tld/objects/posts/5678", // <-- reference to Announce activity itself
"type": "Announce",
"actor": {
"type": "Person",
"name": "Sally"
},
"object": "https://instance.tld/objects/posts/1234" // <-- reference to what is being Announced
}
>See attachment #1. The url points to the song’s audio file or, in most cases when the rubber hits the road, page.
This is an Audio document, not a Listen activity. What are the semantics of this, you are "creating" an audio document for external resource and that somehow means you listened to it? What if I create several Audio documents pointing to same url because I kept listening to a song on repeat, how to distinguish between those "Audio documents" if they all point to same url?
Yes, sure, it works with existing pleroma instances due to legacy but it's also a limiting factor why nobody else would want to support this broken format.
>If you want to link towards what is actually being listened to you put it in the url field. This isn’t just silly, it’s incorrect. You’re actively being wrong here.
1. If you are LISTENING to something it should be Listen activity/object, not an Audio document/object.
2. url field is for pointing to representation of the object. It's says right there:
>Identifies one or more links to representations of the object
You are the one being incorrect here. If you REALLY insist on using Audio type then yes, url can refer to a youtube video, but Audio document ALONE doesn't mean a scrobble for it, and there's aforementioned issue of having multiple Audio documents pointing to same URL, otherwise you have multiple documents with same representation, and to actually implement a scrobble you'll need to ALSO make a Listen activity that references the Audio document, so:
{
"@context": "https://www.w3.org/ns/activitystreams",
"summary": "Sally created an "audio document" for scrobbling",
"url": "https://instance.tld/objects/audio/B-oU2xlViRQ",
"type": "Create",
"actor": {
"type": "Person",
"name": "Sally"
},
"object": {
"type": "Audio",
"name": "Megadeth - Hangar 18 (youtube)",
"url": "https://www.youtube.com/watch?v=B-oU2xlViRQ"
}
},
{
"@context": "https://www.w3.org/ns/activitystreams",
"summary": "Sally listened to Megadeth - Hangar 18 (youtube)",
"url": "https://instance.tld/objects/listens/1234",
"type": "Listen",
"actor": {
"type": "Person",
"name": "Sally"
},
"object": "https://instance.tld/objects/audio/B-oU2xlViRQ"
}
>Can you fucking stop wasting my time with bullshit?
Likewise. If you keep on saying "not actionable" and "outright wrong" instead of actually discussing you should lead your own project with an iron fist like the likes of gargron, gleason and floatingghost, people who know "for sure" right from wrong without discussion and not willing to concede.
Your attitude is main reason why your BE MRs are "stuck" as almost no one on the backend wants to deal with you because you keep on saying things like "do it like this because doing it other way is objectively wrong".
I know jack shit about ActivityPub and backend, you are forcing me to actually learn it and dig through AP docs. And since you're having a skill issue, I don't even care if you contribute further or not.
Even my patience has Limits.
I just can't leave this thing up
to you any longer.
I'll do the coding!
You can just go home!
image.png