Open Graph Beta: can it be used with Facebook iFrame Canvas application - facebook

Playing around with Open Graph Beta I realized that the Open Graph is created for webpages outside of facebook.com. While trying to publish an action and an object I realized that an object should be defined on a webpage outside of Facebook.com.
And it looks that inside Facebook.com I cannot create objects. e.g. http://apps.faceobook.com/myNamespace/objects/car?id=102 throws me an error
Is this intended?
(OAuthException) (#3502) Object at URL
http://apps.facebook.com/myNamespace/objects/car has og:type of
'game'. The property 'car' requires an object of og:type
'myNamespace:car'.
I set the og:type inside the iFrame app to
<meta property="og:type" content="myNamespace:car"/>
but the error persists.

The bug has been fixed now.
Fixed the scraper to transform canvas app URLs into the appropriate
iframe URL. Note that we stop following any further redirects after
doing such a transformation.

Related

Listing Facebook Open Graph Objects from an Application

According to Facebook's Open Graph API Documentation (https://developers.facebook.com/docs/sharing/opengraph/object-api/), you should be able to list object's associated with your application with:
https://graph.facebook.com/app/objects/$OBJECT_TYPE?access_token=$APP_ACCESS_TOKEN
However, when I attempt to list my application's Open Graph Articles, with
https://graph.facebook.com/app/objects/article?access_token=$APP_ACCESS_TOKEN
I get an empty array. Additionally, I get an error on the Object Browser page (https://developers.facebook.com/tools/object-browser) stating:
There are no Object Types configured for this app.
I have added Open Graph as a product to the application and there are many objects that have been created with my Application using the fb:app_id meta tag as follows:
<meta property="fb:app_id" content="MY_APP_ID">
Is there something else I am missing that needs to be done to associate an OG object with an application or enable Open Graph objects other than adding the fb:app_id meta tag to the page?

How to embed Iframe page on Facebook wall by sharing the URL?

I've been trying to embed an Iframe by sharing a page URL on my Facebook wall. I'm using the Open Graph tags as recommended by Facebook and have read other threads similar to my issue. What I want to achieve is something that others are doing, like Sketchfab, ThingLink, helloeko.com or Kaltura.
The problem I'm having is that instead of the embed page being replaced by an IFRAME when you click on the Facebook post, it's replaced by an HTML5 video tag.
You can test what I'm talking about by sharing a link like this one on a Facebook wall: https://sketchfab.com/models/f3e191a68ec247ff9d4d72d35fd12829. They use this https://sketchfab.com/models/f3e191a68ec247ff9d4d72d35fd12829/embed?autostart=1 as the embed player, which is set by the open graph og:video:url tag.
I've done the same with my open graph tags. The Facebook Sharing Debugger is also not returning any errors or warnings and the Open Graph tags are being processed like the examples I mentioned here.
I'm using the following open graph tag also, so the content is not set as a video but instead as text/html:
<meta property="og:video:type" content="text/html">
The only thing I'm not sure how to use is the og:type tag. I'm using my Facebook app namespace and the name of an object type I created on the app settings like this:
<meta property="og:type" content="namespace:object_type">
Is there any whitelisting process for the domain I'm trying to embed on Facebook? Can't find anything on the Facebook Developers docs.

Links are loading without thumbnail images in Facebook

Links from our website Pixorange.com is loading without thumbnail images in Facebook. I did use FB lint tool to debug the issue and is giving an error stating that the image is not found.
Here are some links which you can post in FB wall and see that the thumbnail images are not loading with link. The issue is not every links but with some:
http://pixorange.com/tweet-my-weaknesses-to-me-says-modi
http://pixorange.com/rajiv-gandhi-was-entrepreneur-for-swedish-jet
Also when you like the article with FB like button, I am getting an error as follows " is an invalid value for property "object" with type "Reference*"*
We did check our app settings are found that the things are ok and also we did change our server from Hostgator to Inmotion hosting. I opened a ticket with hosting provider and FB developer, still they are not able to find the reason why the link is not loading.
Thanks,
Aswathi Achu
Try adding a <meta> tag in the <head> section like:
<meta content='100003340872784' property='fb:admins'/>
Replace the 100003340872784 with your own facebook user id. You can get your facebook user id from here.
Regards to Team Trickonics.

Facebook URL Linter pulls data for wrong page

My team recently launched a Web app that makes heavy use of Facebook's Like Button. Most of them work fine, but several of the Like URLs aren't recognized correctly by Facebook or its URL Linter. These URLs are for a page on our app that redirects to a corresponding page in a Facebook app...
Example URL:
http://www.3mframeworks.com/pages/redirect?url=http%3A%2F%2Fapps.facebook.com%2Fcouplespeak%3Fv%3Dvideos%26id%3D17
Facebook's URL Linter returns data as if the "id" parameter isn't there:
https://developers.facebook.com/tools/lint?url=http%3A%2F%2Fwww.3mframeworks.com%2Fpages%2Fredirect%3Furl%3Dhttp%253A%252F%252Fapps.facebook.com%252Fcouplespeak%253Fv%253Dvideos%2526id%253D17
Other Open Graph parsers return the correct data:
og:it: http://ogit.heroku.com/inspect?url=www.3mframeworks.com%2Fpages%2Fredirect%3Furl%3Dhttp%253A%252F%252Fapps.facebook.com%252Fcouplespeak%253Fv%253Dvideos%2526id%253D34
OpenGraph.In: http://www.opengraph.in/?url=www.3mframeworks.com%2Fpages%2Fredirect%3Furl%3Dhttp%253A%252F%252Fapps.facebook.com%252Fcouplespeak%253Fv%253Dvideos%2526id%253D34&format=html
I've spent hours searching for an explanation...
Facebook's documentation, under Editing Meta Tags, states:
"Note that og:title and og:type are only editable initially - after your page receives 50 likes the title becomes fixed, and after your page receives 10,000 likes the type becomes fixed." My Like counts are nowhere near these numbers.
"For the changes to be reflected on Facebook, you must force your page to be scraped. The page is scraped when an admin for the page clicks the Like button or when the URL is entered into the Facebook URL Linter. You can programmatically force your page to be scraped by cURL'ing the linter." I have tried all three of these methods without success.
Facebook Like button - fetches "wrong" image suggests that linting an URL doesn't reset the cache as Facebook claims.
Facebook Open Graph not clearing cache suggests this may be Facebook caching that will fix itself after an unknown period of time.
facebook like button liking wrong url suggests waiting 24-32 hours for Facebook's cache to be reset. It has been 64+ hours since my Open Graph tags were last set.
Why is Facebook returning the wrong page (affects Facebook Like and Share URL)? suggests that any URL provided to Facebook (e.g. via a Like Button) before being published should be changed. I tried changing the URL, renaming the id parameter, without success.
The most likely culprit seems to be Facebook caching, but it's already been suspiciously long and since this site is part of a currently live campaign that emphasizes Like activity, I'm hoping someone knows a trick to get this working ASAP. Thanks!
Some piece in Facebook's Graph API and URL Linter drops all but the first of multiple URL parameters.
Graph API
When the parameter string is "?v=videos&id=17", "id" is lost:
https://graph.facebook.com/http%3A%2F%2Fapps.facebook.com%2Fcouplespeak%3Fv%3Dvideos%26id%3D17
When the parameter string is "?id=17&v=videos", "v" is lost:
https://graph.facebook.com/http%3A%2F%2Fapps.facebook.com%2Fcouplespeak%3Fid%3D17%26v%3Dvideos
This doesn't happen if the Graph "id" parameter is declared explicitly: https://graph.facebook.com/?id=http%3A%2F%2Fapps.facebook.com%2Fcouplespeak%3Fv%3Dvideos%26id%3D17
Unfortunately that third point doesn't help my situation: I'm not accessing the Graph directly, so I can't just insert "?id=".
URL Linter
For my app, all parameters are needed to render the correct Open Graph meta tags, and the results support my discovery:
When the nested, encoded parameter string is "?v=videos&id=17", Open Graph tags are rendered for "3M Couple Speak Video Contest". This is the expected behavior when the "id" param is absent:
https://developers.facebook.com/tools/lint?url=http%3A%2F%2Fwww.3mframeworks.com%2Fpages%2Fredirect%3Furl%3Dhttp%253A%252F%252Fapps.facebook.com%252Fcouplespeak%253Fv%253Dvideos%2526id%253D17
When the nested, encoded parameter string is "?id=17&v=videos", Open Graph tags are rendered for "3M Couple Speak Translation Contest". This is the expected behavior when "v=videos" is absent:
https://developers.facebook.com/tools/lint?url=http%3A%2F%2Fwww.3mframeworks.com%2Fpages%2Fredirect%3Furl%3Dhttp%253A%252F%252Fapps.facebook.com%252Fcouplespeak%253Fid%253D17%2526v%253Dvideos
This doesn't happen with non-nested, non-encoded parameter strings:
https://developers.facebook.com/tools/lint?url=http%3A%2F%2Fapps.facebook.com%2Fcouplespeak%3Fv%3Dvideos%26id%3D17
For other Open Graph parsers, switching the order of nested, encoded parameters yields the same data, which is correct:
http://ogit.heroku.com/inspect?url=www.3mframeworks.com%2Fpages%2Fredirect%3Furl%3Dhttp%253A%252F%252Fapps.facebook.com%252Fcouplespeak%253Fv%253Dvideos%2526id%253D17
http://ogit.heroku.com/inspect?url=www.3mframeworks.com%2Fpages%2Fredirect%3Furl%3Dhttp%253A%252F%252Fapps.facebook.com%252Fcouplespeak%253Fid%253D17%2526v%253Dvideos
Unfortunately, again, that third point doesn't help my situation: we need to nest and encode the URL.
This explains the bad data I'm seeing, and why it only happens to the URLs with multiple parameters. I submitted a bug report to Facebook.
The iframe source on that Facebook page is at this url it seems:
couplespeak-3m-production.heroku.com/videos
and that page contains the tags that show up in the Facebook Linter.
<meta content='3M Couple Speak Video Contest' property='og:site_name' />
<meta content="3M Couple Speak Video Contest" property="og:title" />
<meta content="website" property="og:type" />
<meta content="http://apps.facebook.com/couplespeak?v=videos" property="og:url" />
<meta content="http://www.3mframeworks.com/images/video_background.jpg" property="og:image" />
<meta content="100001154487117" property="fb:admins" />

Meta tag og:title inside Facebook Application is ignored

I have a Facebook Application with an iframe based canvas that contains a like button (also iframe), in the head of my iframe i've specified the standard meta tags (og:title, og:url, og:site_name) and they seem to work fine (the information is displayed correctly in the profile wall) except for the title.
I've tested various links of the app with the Facebook URL Linter and the ug:title tag is ignored completly.
Have any of you had any trouble with the open graph tags inside facebook applications?
Any ideeas are apreciated, thanks.
I've tried every possible combination and suggestion in adding og meta tags to my page, but none of them worked. When testing URL with facebook URL Linter it always returned default values defined on application admin page. Like it doesn't see og meta tags. And what was more interesting is that when I look the page source, og meta tags existed but haven't been evaluated by facebook or linter.
Now, in my canvas page I defined login/authentication (and depending redirection etc) at the top, before html and og meta tags definition, and that was the main problem.
If you perform FB login redirection/authentication before providing og meta tags,
then FB crawlers/linter will not be able to detect your meta info and will try to auto-fill it.
I'm having the same problem in my app http://apps.facebook.com/tripline It seems that Facebook doesn't process links to pages inside apps the same way as pages they hit directly.
You can see the difference in the URL Linter:
The og:url on the canvas page: http://apps.facebook.com/tripline/trip.php?id=2015071615051003BEE6FBED6F531103 (og:title is ignored, get trip.php instead)
The url to the actual page loaded in the iframe: http://www.tripline.net/api/fbcanvas/trip.php?id=2015071615051003BEE6FBED6F531103#frame-top (og:title correct, but can't link to this because it's not in the frame)
The page on the main site: http://www.tripline.net/trip/The_Boston_Freedom_Trail-2015071615051003BEE6FBED6F531103 (og:title correct, if i can't figure things out, i'm just going to set the og:url on the canvas page to this)
Not really an answer, but at least you know you're not alone or crazy...which is worth something.