New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

publish should propagate person-tags to POSSE copies #459

Closed
tantek opened this Issue Sep 5, 2015 · 20 comments

Comments

Projects
None yet
3 participants
@tantek
Copy link
Contributor

tantek commented Sep 5, 2015

When you use Bridgy Publish to POSSE a photo post, it should read the person-tags from the original post, and propagate them to the POSSE copy (e.g. to Facebook or Twitter).

Original question/request: http://indiewebcamp.com/irc/2015-09-01/line/1441139069479

See also:
http://indiewebcamp.com/person-tag

This could be implemented in at least a couple of steps/iterations.

Phase 1: only use person-tag URLs of silo profiles that are directly indicated in the h-cards of the person-tags on the original photo post. E.g. a person-tag h-card could have multiple u-urls on it, and if one of them happens to match the silo domain, use it as the identity to person-tag on the POSSE post! (I'll add an example of how a person-tag publisher could do this to the indiewebcamp wiki to hopefully make it more concrete).

Phase 2: look up the person-tag's silo profile equivalent via rel=me identity lookup on their website. This would require Bridgy to retrieve the first u-url of the person-tag h-card, parse it for rel=me links (i.e. use a microformat2 parser), use the first one of those rel=me links that happens to match the silo domain as the identity to person-tag on the POSSE post! This could require Bridgy to do one additional HTTP(S) request per person-tag on a post which thus depends on the number of people in a photo.

@snarfed

This comment has been minimized.

Copy link
Owner

snarfed commented Sep 5, 2015

thanks for all the details! agreed, this would definitely be fun to have.

@snarfed snarfed changed the title Bridgy Publish photo post should propagate person-tags to POSSE copies backfeed person-tags Sep 5, 2015

@snarfed

This comment has been minimized.

Copy link
Owner

snarfed commented Sep 5, 2015

updated title since we should ideally do this for all silo person tags, not just on posts published by bridgy.

@snarfed snarfed added the listen label Sep 5, 2015

@snarfed

This comment has been minimized.

Copy link
Owner

snarfed commented Sep 5, 2015

oh wait sorry, i misread. this is the other direction. reverting that change.

@snarfed snarfed changed the title backfeed person-tags Bridgy Publish photo post should propagate person-tags to POSSE copies Sep 5, 2015

@snarfed snarfed changed the title Bridgy Publish photo post should propagate person-tags to POSSE copies publish should propagate person-tags to POSSE copies Sep 5, 2015

@snarfed

This comment has been minimized.

Copy link
Owner

snarfed commented Sep 5, 2015

slightly modified since afaik it's not technically photo-specific: you can person-tag arbitrary FB/twitter posts, with or without a photo.

@snarfed snarfed added publish and removed listen labels Sep 5, 2015

@tantek

This comment has been minimized.

Copy link
Contributor Author

tantek commented Sep 5, 2015

agreed, more than just photos, photos just happen to be key (driving) use-case :)

Also, extended person-tag markup example added as promised: http://indiewebcamp.com/person-tag#With_other_profiles

Inline for your convenience:

<span class="u-category h-card"> 
  <a class="u-url p-name" href="http://ben.thatmustbe.me/">Ben Roberts</a> 
  (<a class="u-url" href="https://twitter.com/dissolve333">t</a>, 
   <a class="u-url" href="https://www.facebook.com/dissolve333">f</a>)
</span> 
@snarfed

This comment has been minimized.

Copy link
Owner

snarfed commented Sep 17, 2015

turns out this a dupe of #318, but it has useful details, so i'm closing #318 instead.

@tantek

This comment has been minimized.

Copy link
Contributor Author

tantek commented Sep 24, 2015

And on the backfeed side: #488

@snarfed snarfed added the SWAT0 label Nov 5, 2015

@snarfed

This comment has been minimized.

Copy link
Owner

snarfed commented Nov 5, 2015

current silo support:

@snarfed snarfed self-assigned this Nov 15, 2015

snarfed added a commit to snarfed/granary that referenced this issue Nov 16, 2015

snarfed added a commit to snarfed/granary that referenced this issue Nov 16, 2015

snarfed added a commit to snarfed/granary that referenced this issue Nov 16, 2015

snarfed added a commit that referenced this issue Nov 16, 2015

@snarfed

This comment has been minimized.

Copy link
Owner

snarfed commented Nov 16, 2015

facebook is done! tested just now and it works. silo SWAT0 here we come!

snarfed added a commit to snarfed/granary that referenced this issue Nov 16, 2015

@snarfed

This comment has been minimized.

Copy link
Owner

snarfed commented Nov 17, 2015

flick is done now too, thanks @kylewm!

tentatively closing this since the other three silos aren't possible. if anyone badly wants this for the other silos and really wants to track it in case they add support in the future, feel free to reopen.

@snarfed snarfed closed this Nov 17, 2015

@tantek

This comment has been minimized.

Copy link
Contributor Author

tantek commented Nov 17, 2015

Agreed with closure as completion of what's possible today. Other silos should be separate issues with proposals that are either actionable today or fully "wish list" awaiting something from the silo.

@tantek

This comment has been minimized.

Copy link
Contributor Author

tantek commented Jan 19, 2016

Looks like this may have broken recently in Bridgy Publish photos + person-tags to Facebook at least.

This post: http://tantek.com/2016/018/t4/w3cab-meeting-hawaii (has a bunch of person-tags)
Bridgy Publish POSSE to Facebook copy: https://www.facebook.com/photo.php?fbid=10102083967065093

Note that none of the person-tags (including my tagging myself) made it to the POSSE copy on Facebook.

All of the person-tags on that Facebook copy (including of me) were added afterwards by Coralie, as you can see by hovering over the person-tags and looking the top left of the resulting pop-up where it says in small white text "Tagged by Coralie Mercier".

Any idea what broke? Re-open this?

@kylewm kylewm reopened this Jan 19, 2016

@kylewm

This comment has been minimized.

Copy link
Collaborator

kylewm commented Jan 19, 2016

For reference, we originally noticed that person tags seemed to work when you use the person's numeric ID as their URL in http://tantek.com/2015/350/t2/seasons-greetings-homebrew-website-club where it successfully tagged Marc Canter, even though he has never logged in to Bridgy. But even if that was a fluke, we still would've expected Tantek's person tag of himself to make it through.

@kylewm

This comment has been minimized.

Copy link
Collaborator

kylewm commented Jan 19, 2016

I mentioned on IRC that person tags used to not work without a location ("You cannot specify this field without also specifying a place.", though the same caveat does not exist on the photos page) and I was surprised when they started working. Maybe Facebook fixed the "bug" that was letting us do it temporarily.

@snarfed

This comment has been minimized.

Copy link
Owner

snarfed commented Jan 19, 2016

here's the publish log.

from IRC:

snarfed looking at the log, this is what we sent to facebook:
snarfed url=https://scontent-sjc2-1.cdninstagram.com/hphotos-xtf1/t51.2885-15/e35/12407429_887813537998827_121176936_n.jpg&message=One week ago, @W3CAB meeting in #Hawaii. I blame @Nov_Project for the #straightface reflex. #latergram #nofilter\n\n(Originally published at: http://tantek.com/2016/018/t4/w3cab-meeting-hawaii)&tags=[{"tag_uid": "100000802747500"}, {"tag_uid": "735170173"}, {"tag_uid": "214611"}, {"tag_uid": "538464812"}, {"tag_uid": "692216758"}]
snarfed so that included five person tags
snarfed so evidently FB rejected them all?
snarfed (we can load those user ids' profiles to confirm that they're the right people)
kylewm well 214611 is definitely tantek

@snarfed

This comment has been minimized.

Copy link
Owner

snarfed commented Jan 19, 2016

the tags param format with url-encoded JSON seems odd, but evidently it's right. e.g. this older FB publish with successful person tags used the same format:

url=https://i1.wp.com/snarfed.org/w/wp-content/uploads/2015/11/wpid-wp-1447899561388.jpg?w=696
  &message=Celebrating Homebrew Website Club\xe2\x80\x99s 2nd anniversary....
  &tags=[{"tag_uid": "36802236"}, {"tag_uid": "214611"}]
@snarfed

This comment has been minimized.

Copy link
Owner

snarfed commented Jan 19, 2016

the FB API call is a POST to /USERID/photos, and its docs confirm this format. StackOverflow too.

plus, we got a 200 from the API request, and FB usually returns non-2xx with error details if we give it a bad parameter; it doesn't usually silently ignore.

@snarfed

This comment has been minimized.

Copy link
Owner

snarfed commented Jan 19, 2016

tantek's access token includes the publish_actions permission, which should be enough.

@snarfed snarfed removed their assignment Jan 19, 2016

@snarfed snarfed added the now label Jan 19, 2016

@snarfed

This comment has been minimized.

Copy link
Owner

snarfed commented Jan 21, 2016

i don't have any new leads on this, and i haven't found any other recent person-tagged facebook publish attempts to compare against. :/ @tantek, definitely let us know if you end up trying again!

@snarfed

This comment has been minimized.

Copy link
Owner

snarfed commented Jan 24, 2016

@tantek retried and person tags went through again, surprisingly even more than we thought. details:
#568 (comment)

we still don't understand why tags didn't work the last time, but it's looking like our code is working naively at least, and Facebook's tagging API is either unpredictable or more complicated than we thought.

so, I'm tentatively (re)closing this. we can keep collecting data points on the complexities in #568.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment