#social 2017-11-16
2017-11-16 UTC
rowan joined the channel
# ajordan https://github.com/connrs/node-webmention-client/pull/2 sent upstream though I don't think anything will happen
# xmpp-social [ajordan] Hah, it's nothing. Literally four characters
# xmpp-social [ajordan] ".post" ?
# JanKusanagi 4 chars could save your life!
# xmpp-social [ajordan] I really should just rewrite this library from scratch
# xmpp-social [ajordan] It's overengineered in its implementation
# xmpp-social [ajordan] tantek: how's HWC?
# xmpp-social [ajordan] Ah I misremembered :P
rowan and tantek joined the channel
tantek, rhiaro and cdchapman joined the channel
rowan, xmpp-social, tantek, bengo and jankusanagi_ joined the channel
# Chocobozzz hi, not sure how to handle announce activity, should we only announce the object or all the activity? (https://pastebin.com/Ph7D0CYL VS https://pastebin.com/VX1Qvcx6)
# Chocobozzz rhiaro: okay thanks! But if it is an Add activity (https://www.w3.org/TR/activitypub/#add-activity-outbox), I put the "target" property inside the object property?
# Chocobozzz sorry wrong link, i mean in server-server so https://www.w3.org/TR/activitypub/#add-activity-inbox
# Chocobozzz for example, if i want to announce an new note added to a collection -> https://pastebin.com/wdPaLpfE
# Chocobozzz you said that I would only announce the object property, so I loss the "target" property
# Chocobozzz so how to keep this "target" property in an announce activity?
# Chocobozzz ok thank you very much rhiaro :)
# Chocobozzz I want to share that a user uploaded a video in its video channel
# Chocobozzz So in fact, i want to share the video creation. But a video belongs to a video channel, it's the reason why i send a 'Add' instead of a 'Create'
# Chocobozzz rhiaro: I send the Add directly to the user followers, but another Actor then could share this video creation -> it's why i want to announce the add :)
# Chocobozzz exactly :)
# puckipedia waves
# puckipedia I'm in the train, looking at some issues between Mastodon and Kroeg
# puckipedia something in the mentions is borked
# puckipedia wait no, I know, and now I'm annoyed
# puckipedia the train wifi is so slow loading the JS times out
# Chocobozzz rhiaro: I'm moving the private federation protocol to ActivityPub for peertube :) https://github.com/Chocobozzz/PeerTube
# puckipedia Chocobozzz: my suggestion is that the channel Create's the video, and then the other places Announce just the object
# puckipedia wait, is channel ~= user in this software?
# puckipedia I forgot I had done a PR to fix the issue I'm having now; but it isn't in a released version yet lol
# Chocobozzz puckipedia: yes, a user is not a channel : a user can have multiple channels, and choose in which channel he uploads the video
# puckipedia does the user have a view of all the videos they uploaded?
# puckipedia (and does the user show in the video info, or just the channel?)
# puckipedia https://puckipedia.com/status/8ad21968/lol-nope hahah
# puckipedia hey so random thing I noticed: order of attachments isn't defined in AS2
# Chocobozzz puckipedia: yes, the user will be able to view all the videos they uploaded, but also all the channels they created and view all videos inside a channel
# puckipedia I think a user Creating a Video and a Channel announcing that Video is probably the best? but this is very subjective
# puckipedia and of course, Creating a Channel
rowan, JanKusanagi, timbl and tantek joined the channel
# puckipedia well that was fun. bit of talking, blood tested
# puckipedia time to do more ActivityPub things
timbl, cdchapman, sandro, bwn and bengo joined the channel
# distopico Hi, good day, I have a question related to AcitivityPub endpoints
# puckipedia well, I might have an answer
# distopico The API endpoints has some standar structor?
# distopico I mean could be "api/user/likes" or "as/collections/user" or something like that?
# puckipedia ah, that's completely dependant on the server software
# puckipedia but you can e.g. find a user's likes by parsing their profile object
# puckipedia e.g. if you look at curl -H Accept:application/activity+json https://puckipedia.com/ | jq .; you can see my inbox, outbox, liked, following, followers, etc
# puckipedia looks at Loqi
# puckipedia yep I don't do microformats yet and that's the first microformat h-card
rowan joined the channel
# puckipedia distopico: of course, if you write your own server, you are welcome to add in structure -- but you can't require that structure on every server
# puckipedia e.g. you may want to federate with Kroeg, or Mastodon, which use different URLs
# distopico How a server discover the profile from other server endpoint?
# distopico A server has "api/users" and other "v1/api/user" how know what is the correctly endpoint?
# puckipedia there's no central server endpoint
# distopico how Kroeg discover the Mastodon endpoints?
# puckipedia if you say "I would like to mention cwebber on octodon.social", you either enter @cwebber@octodon.social and it uses webfinger, or you enter https://octodon.social/users/cwebber - both of these point towards a JSON-LD object describing the user, and containing the needed endpoints
# xmpp-social [ajordan] distopico: it's much less structured than in pump.io
# xmpp-social [ajordan] @cwebber@octodon.social is mostly legacy though
# xmpp-social [ajordan] I.e. Webfinger lookup is legacy
# distopico Ok, the way is with webfinger?
# puckipedia if you are starting to write an AP implementation, I would suggest just requiring the ID of a user
# distopico But the user id could be lives in "sever.com/userID" or "server.com/api/userID" but from "server.com/.well-known/..." get the correct path?
# puckipedia the user ID is a URI. e.g. "https://puckipedia.com/" is my user Id, cwebber's is "https://octodon.social/users/cwebber", but I could also have a user ID which is "https://puckipedia.com/florp/toot/emoji/not-a-user/trust-me/actually/i-lied"
# distopico Ok, thanks
# rowan wait, why are we discouraging webfinger? like, i understand that .well-known is Less Than Ideal, but the webfinger acct:x@y scheme is v human readable and intuitive
# puckipedia rowan: well, we don't have anything better right now
# puckipedia and e.g. Mastodon requires it
# rowan right; what i mean is, you just recommended that a new AP implementation flat out require the ID instead of using webfinger
# rowan and that seems to me like it makes the ux worse
# rowan but i might have misunderstood something?
# cwebber2 causing trouble https://octodon.social/@cwebber/99015530843597174
# puckipedia haha, I now have emoji- and user-searching
# puckipedia I have an improved @-selecting view
# puckipedia it still mostly works by magic
# distopico So, The ActivityPub ID no required be "the-user@test.com", could be "test.com/my-social-nework/the-user"
# puckipedia the id the-user@test.com is actually your preferredUsername plus the hostname of the domain it's on, using webfinger, afaik
# distopico so, is better the webfinger as primary discoverable and "server.com/userId" as fallback?
# distopico example: https://mastodon.social/.well-known/webfinger?resource=Gargron@mastodon.social
# distopico and fallback: https://mastodon.social/@Gargron.json
# puckipedia inverse
# puckipedia also the mastodon IDs are actually example.com/users/ExampleUser
# distopico but for mastodon, for pump.io is example.com/ExampleUser
# distopico and mastodon has alias in https://mastodon.social/ExampleUser
# puckipedia oh no. due to Reasons, the order of attachments in Kroeg is inverse to that of Mastodon
# puckipedia as:attachment is a set :<
# bengo cwebber2 does this look like a valid test of what you have in mind for client audience targeting recursion? https://distbin.com/activities/758a7eec-9b82-49a5-9dbd-d72e1bdcd8fd
# bengo cwebber2 np
rowan joined the channel
# puckipedia I set something up so I get notifications for every mention and DM and like and etc
# puckipedia basically, every activity that is addressed directly to my ID
# puckipedia I feel like this is a good indicator for notification
# puckipedia then mentions would be "Create sent to me and at least one collection", and DMs would be "Create sent to me and no collections"
# puckipedia waves hand
# puckipedia seriously
# puckipedia ... seriously
# puckipedia anyways I wanted to continue with "damn you, non-updated Mastodon instances"
# puckipedia ack waves
# puckipedia well at least that's fixed
# puckipedia anyways I have a collection that gets me all my directly addressed objects now
# puckipedia which also sends me a push
# puckipedia I *could* make Kroeg more microservice-y
# puckipedia well basically two, one to GET things, and one to basically just process POSTs
# puckipedia they aren't even that micro
# puckipedia hah, I like live push messages to tell me I got a mention :P
# bengo cwebber2 thanks! dont sweat the delay. I'm also juggling client work at the same time today :)
# puckipedia so ehm, when writing ActivityPub servers, just imagine that the consumers of your server have an irrational fear for objects without id
# puckipedia tbh, e.g. the as:image inside a toot:Emoji is inline
# puckipedia yeah. tbh most primary objects you'll shuffle arround should have IDs
# puckipedia stuff like attachments/tags
# puckipedia those doesn't really matter
# puckipedia wait I have like 32 followers???
# puckipedia wait no 22
# puckipedia https://puckipedia.com/ I have a counter thingy now!
# puckipedia also that
# puckipedia is still a thing
# puckipedia I need to sprinkle some microformats onto the page
# puckipedia bengo: because you're not in the correct mindset. remember, phobia for objects without IDs :P
# bengo ah that's right. Working on fixing the stuff that was causing trouble. Forgot that one
# bengo thx