I'm using FB Open Graph in my application. It's not fully working. When I post a object it appears in the user's recent activity; however, it doesn't appear on their timeline. The metadata has no errors and I'm using the FBGraph gem but it also doesn't work when I do it using curl. Any advise to fix this?
Have you tried to use 'fb:explicitly_shared=true' in your URL. Refer: https://developers.facebook.com/docs/technical-guides/opengraph/explicit-sharing/
When you are in development mode, and your actions have not yet been approved by Facebook, the posted actions are only visible to you and to others with developer, admin or tester privileges for your FB app.
See: Facebook action submission
Also, open graph actions will no longer appear in users' news feeds or even the Ticker: http://developers.facebook.com/bugs/398546930211799/. So you shouldn't expect activities performed in your app to appear in users' timelines, unless these activities are tagged as 'explicitly shared', and even then there's no guarantee they'll show up.
Only direct, active shares are more or less guaranteed to show up in the Timeline.
Did you submit your action to get approved by facebook? If you did not do this, it will only work on your facebook account.
Also, are you sure you request the correct permission when the user authenticates, such as 'publish_stream'?
Related
Please could you help. I have created a website that allows people to upload listings of items they are selling. I want to know how to add the feature where when someone creates a listing, it automatically posts on the user's FB page, with a link to the listing on our website. Is this possible? Would the user have to log into our website using their FB account for this to happen? Thanks everyone for your help.
Martin
You need to create a Facebook App and use Facebook Graph API with publish_actions permissions to do that. Note that the facebook rules prohibit sending fully automated messages that the user has no control, your user must have the ability to edit the message before sending
I have searched on Google and Fb's documentation about this but didn't find anything.
I've already shared content of my page on Facebook with the Share button provided by FB's api and also made an app on Facebook.
Now I want to receive notifications in my page when someone comments the publication or likes it.
I know that I can consult the posts/comments/likes if the user gives me the permissions, but I don't want to do this every 5 minutes. I want that facebook notifies me like a push notification.
How can I do that if it's possible?
Thanks!
After the user shared something on his wall, there is no way for you to get notified about comments/likes on that wall post, unless you authorize the user with user_status or read_stream.
That being said, there is the Realtime API with the feed and statuses fields to subscribe to: https://developers.facebook.com/docs/graph-api/real-time-updates/
That´s probably the best option, although you must authorize the user with the correct permissions too.
I have been working on a Facebook app for some time, and we are having trouble getting the app approved. I feel like Facebook's app approval process is a constantly moving target and their explanations are provide the least amount of detail possible, leaving the door open for further rejections.
We are using a Facebook app to provide sharing functionality for products that are behind a paywall. All of our share buttons are custom, so they fit in our designs (we don't want to use the out of the box buttons). We first built the app attempting to use the recommended share dialog with open graph actions and stories. The problem here is that you can only use the share dialog with a shared link. Facebook reads any open graph tags on the page to provide sharing information, but because there are many different "products" on a given page, we can't use open graph tags. Because of our environment, we couldn't use the actions or stories. Furthermore, we'd like to customize that share information, so using share dialog is not an option.
Unfortunately, we had left our open graph stories and actions in our app when we first attempted approval. In our first denial, Facebook told us that we had implemented our open graph actions and stories incorrectly. We were not using the share dialog, but the 'feed' method, which is deprecated in 2.0 but still works. Thinking that Facebook looked at our app and noticed we were not using those actions correctly, we figured if we removed those stories and actions from the app, Facebook would see our share method worked and approve us. Wrong.
We had built the share using the publish_actions permission, along with FB.login() and FB.ui(). Facebook denied us because our app did not need publish_actions. They recommended we use the share dialog which did not need login or permissions.
We removed the publish_actions permission and FB.login(). When we tested this, you could still login to Facebook and perform the share WITHOUT fb.login(). So we thought it was good to go. It was not; Facebook told us we needed to implement login(), even thought the docs say you don't need it.
Now we have reimplemented login() and are going to try to get it approved again, but I have a feeling it's going to get rejected due to the 'feed' method being deprecated.
So my questions are:
A) If you have a website providing a paid service, how do you allow your users to post to their feeds, using the newer share method, with data you'd like? Eg: "I just completed the Get Moving III workout at teamexos.com!" The post would contain no pics or links. If it had to, a link to teamexos.com would be ok.
B) How do paid sites provide open graph actions and stories? Do they have public links to their products? Do those products have their own individual pages, with their own open graph tags?
First of all, the feed dialog is not deprecated, at least not anymore. You do not need to get anything approved for it, and you certainly don´t need login: https://developers.facebook.com/docs/sharing/reference/feed-dialog/
But: Your example looks like an Open Graph story, you should consider taking a look at those: https://developers.facebook.com/docs/sharing/opengraph
I publish actions from by website using the app I created for it on facebook.
My actions have been approved by FB.
when they are published they appear on the activity log.
However they do not appear on the timeline and do not show on the main pages of that user's friends, only under activity log.
How can I make it so the actions are posted to the timeline itself and all the user's friends would see it on the main page?
Thank you
What you want is Explicit Sharing. Just Open Graph by itself doesn't guarantee your content will be pushed into News Feed and/or Timeline.
Explicitly_shared on its own does not always seem to be effective.
I have experienced this myself (and still do), where although the "explicitly_shared" attribute is set to "true", the post does not show up on timeline.
On checking the activilty log, is is marked as "allowed on timeline" but not "shown on timeline", which seems to need to be set manually and results in the correct post. I presume there is a way to force this, but I have not yet found it!
(the app is approved and live, with publish_actions enabled)
I just created last week an App and I've read that offline access doesn't work with newly created apps.(I haven't found any tutorial on the web. I am really new to facebook apps)
with this new change in facebook, I don't know how to use the current thing.
I badly need this feature because I don't want the user keeps logging-in in facebook everytime he visits and posts a status in my site as well in his facebook wall. I just want the user to be stayed connected and be able to post on his wall automatically thru my site once he authorized my app.
Thank you.
There are very clear and simple instructions on the following documentation to explain what you need to do to switch to long-life access tokens:
https://developers.facebook.com/roadmap/offline-access-removal/
Also, from your description, it sounds like you are spamming and breaking Facebook Platform Policies. Users will hate any app that automatically posts on their behalf, so I recommend you do not do that, as either people will stop using your app or they'll report it and it'll get banned.