Facebook: Wall Posts and Facebook Platform Policies: be careful

When using the methods for wall posts in the current Facebook sample app (in 2011.591), the options appear to be either:

  1. Just post a message directly to their wall, without letting the user edit the wall post or even see what’s being posted (this is what’s going on in all of the tutorials and code snippets I found in the forums)

  2. Give the user a blank dialog box to post whatever they want to their wall via your application.

If I understand the Facebook Platform Policies correctly (http://developers.facebook.com/policy/), you can’t post something to someone’s wall that they didn’t generate themselves. You can see in the feed dialog options page (http://developers.facebook.com/docs/reference/dialogs/feed/) that the option to even pre-fill the message was taken away on July 12, 2011.

So, I believe that the option provided in the Facebook sample app that posts the message “Posting from Corona SDK!” violates the Facebook Platform Policies. Also, if an app was posting a message to my facebook wall that I wasn’t even getting to see before it was posted, I wouldn’t be very happy about it.

The way I see it, the only way to let someone share your app on Facebook is to provide them with a blank dialog box from within your app and hope they say something nice.

Here is the code to do this:

local callFacebook = function()   
 local facebookListener = function( event )  
 if ( "session" == event.type ) then  
 if ( "login" == event.phase ) then   
 facebook.showDialog( {action="stream.publish"} )  
 end  
 end  
 end  
  
 facebook.login( "YOUR APP ID HERE", facebookListener, { "publish\_stream" } )   
end  

[import]uid: 63524 topic_id: 14770 reply_id: 314770[/import]

Nice post, thanks for sharing [import]uid: 84637 topic_id: 14770 reply_id: 54620[/import]

I have some facebook friends who play games and use some other apps available there. I see these generic messages from the apps posted to their walls all the time.

I don’t see how any of these apps fit the policy you have described. Is there a separate set of rules for facebook apps vs. external apps posting to facebook? [import]uid: 67839 topic_id: 14770 reply_id: 54631[/import]

I’m not sure that’s true, that you can’t post directly to someone’s wall. You posted a link to a page that apparently supports that stance, but right at the top of that page it says this:


If you would like your application to publish directly to a profile’s feed without user interaction, use the corresponding Graph API call.

That makes it sound like a direct post from an application is fine (assuming you use the Graph API calls).

Jay
[import]uid: 9440 topic_id: 14770 reply_id: 54662[/import]

In order to get your app to post to Facebook, you have to register a Facebook application to get an App Id, and whether your app integrates with Facebook using a canvas page, or through a website, or through a mobile app, I believe that it’s all the same to Facebook, you’re still using their platform and their API. I could be wrong about that.

I think the part that applies to directly posting to someone’s wall is under Application Integration points:


  1. You must not pre-fill any of the fields associated with the following products, unless the user manually generated the content earlier in the workflow: Stream stories (user_message parameter for Facebook.streamPublish and FB.Connect.streamPublish, and message parameter for stream.publish), Photos (caption), Videos (description), Notes (title and content), Links (comment), and Jabber/XMPP.
  2. If a user grants you a publishing permission, you must still obtain consent from the user before taking any action on the user’s behalf, such as publishing content or creating an event.

In the Facebook Sample app, and the snippet I’ve seen on the forums, the sequence goes like this:

  1. User logs in
  2. User authorizes app
  3. Window closes and the story is immediately posted to the wall, without confirmation or even seeing what was posted.

I think this violates both item 2 and 3 above.

You’re right about what it says at the top of the Feed Dialog page, but doesn’t that directly conflict with item 3 above? It’s basically saying, use the Graph API to directly post without user interaction, but don’t post without user interaction. (?)

[import]uid: 63524 topic_id: 14770 reply_id: 54670[/import]


You’re right about what it says at the top of the Feed Dialog page, but doesn’t that directly conflict with item 3 above? It’s basically saying, use the Graph API to directly post without user interaction, but don’t post without user interaction. (?)

I don’t think there’s a discrepancy, depending on how you do things. If someone is signed into FB from my app and at some point they hit a “Post to Facebook” button, that’s “consent” from the user to post to their wall.

What wouldn’t be consent would be to post “Bob just got a high score on FlappApp!” when Bob got a high score – but didn’t say to share that achievement.

That’s the way I read it, anyway. If the user doesn’t know something is being published, that’s when you could/should run into trouble.

Jay
[import]uid: 9440 topic_id: 14770 reply_id: 54671[/import]

So is there a way to populate the message field and just show the dialog?

That’s make it easy.

Any ideas? [import]uid: 13784 topic_id: 14770 reply_id: 54808[/import]

Check out that thread I’ve bookmarked earlier which shows a way to post without GraphAPI. To both FB & TW

Taken from the thread It works rather well and also allows the user to edit their post.

http://developer.anscamobile.com/forum/2011/05/06/easy-twitter-integration

[import]uid: 10478 topic_id: 14770 reply_id: 57096[/import]

On thing to clear this up is that you can’t fill in the message field. Facebook will now ignore it. What you can do is fill in information about the post/image/etc. I am bringing up a dialog box up with a text field. I let the user say something about my game, and then I add that to my message… you then get a:

Dave says, “blah blah blah”
My game image here: description here
More descriptive stuff
link, etc.

I think this is the best approach as it allows the user to have a say and you simply tag your info on it. I’ll attach some code in a few days once our game is released and I’m allowed to do so.

-d [import]uid: 27681 topic_id: 14770 reply_id: 82076[/import]

I am hoping for an example similar to what I see in other apps, like the Scrabble app on Facebook, for example.

Where the developer provides the name, caption, link, picture, and description, and opens a dialog with those displayed (and uneditable) with a text field for the user to enter in the message. Then it sends all the data to be posted.

Would love to see how that could be created using Corona, in conjunction with the new Facebook SSO code (which has already been nicely documented). [import]uid: 17827 topic_id: 14770 reply_id: 82080[/import]

EDIT: I just noticed that stream.publish is being deprecated:

https://developers.facebook.com/docs/reference/rest/stream.publish/

Hmmmm… From what I understand, only supported action for facebook.showDialog is stream.publish ( http://developer.anscamobile.com/reference/index/facebookshowdialog )

So how will this impact what we’re trying to do…?


@drnelson, I’m wondering how you’ve combined the dialog box with the post/image/etc.

I can successfully use both listeners (and they post on FB properly):

facebook.showDialog( {action=“stream.publish”} )
facebook.request( “me/feed”, “POST”, attachment )

But I don’t know how I might combine both in one. Is there a way to combine both? Meaning, stream.publish the dialog message along with the post/image. Or do I need to use two listeners to achieve this? I’d so like to hear how you’ve done it.

Naomi [import]uid: 67217 topic_id: 14770 reply_id: 91748[/import]

Can anyone help me , I want to post photo on facebook but NOT with a URL ,
just by passing the image data.

I referred a blog http://blog.anscamobile.com/2011/12/uploading-photos-to-facebook-in-corona/

but still am getting a blank white screen after I log in .

Please help asap

Thank u [import]uid: 95790 topic_id: 14770 reply_id: 94759[/import]

Can anyone help me , I want to post photo on facebook but NOT with a URL ,
just by passing the image data.

I referred a blog http://blog.anscamobile.com/2011/12/uploading-photos-to-facebook-in-corona/

but still am getting a blank white screen after I log in .

Please help asap

Thank u [import]uid: 95790 topic_id: 14770 reply_id: 94762[/import]

Me too i succeed to post message but i want to post image ,any help??? [import]uid: 160777 topic_id: 14770 reply_id: 118380[/import]