b77a09fdee
Let's use getUrl() for URL retrieval. May throw exceptions, but only if it's a Notice that cannot be linked like that anyway. |
||
---|---|---|
.. | ||
actions | ||
classes | ||
extlib | ||
images | ||
lib | ||
locale | ||
FacebookBridgePlugin.php | ||
README |
Facebook Bridge Plugin The Facebook Bridge plugin allows you to integrate your StatusNet site with Facebook. It uses Facebook's new SDKs, the Graph API and OAuth 2.0, and supercedes the previous "Facebook" plugin, which relied on the Facebook's now deprecated "Old REST API". The other major difference is the troublesome and confusing Facebook Canvas Application has been removed. Note: Do NOT try to run the old Facebook plugin and this plugin at the same time. It won't work. Features for the new Facebook Bridge Plugin: - "Login with Facebook" (AKA single-sign-on using Facebook Connect for authentication). - Registration with Facebook Connect, including automatic profile creation based on users' Facebook accounts. - Post mirroring -- posting a notice on StatusNet automatically creates a post on Facebook, deleting it on StatusNet deletes it on Facebook, and faving it "likes" it on Facebook. Upgrading from the old Facebook plugin ====================================== Remove the addPlugin('Facebook') statement for the old Facebook plugin from your config.php and adjust your existing Facebook application using the setup instructions below as a guide, then enable the new plugin (also described below). Existing users who have setup post mirroring shouldn't have to do anything. The new Facebook Bridge plugin will keep their notices flowing to Facebook. Setup ===== There are two parts configuring the Facebook Bridge plugin -- setup on the Facebook side, and setup on the StatusNet side. Setup (Facebook side) ===================== The first step is to login to Facebook and register a Facebook application to get an application ID and secret. Use the handy Facebook application setup wizard: http://developers.facebook.com/setup/ Once you've set up your application, you'll need to enter the Facebook Developer dashboard (http://www.facebook.com/developers/editapp.php?app_id=YOUR_APPLICATION_ID) and customize a few things: About tab --------- Set your logos, application description, etc. as you see fit. Web Site tab ------------ Make a note of the "Application ID" and "Application Secret" Facebook generated for your application. You'll need both of those later. Make sure "Site URL" points to your StatusNet installation (e.g.: http://example.net/). - Special Note for multi-site Status Networks: enter your domain (SLD and TLD) in the "Site Domain" field. (e.g.: status.net). This will allow a single Facebook Application to work with all your network subdomains (*.status.net). Facebook Integration tab ------------------------ Use the default settings. Mobile and Devices tab ---------------------- Use the default settings. Advanced tab ------------ In the Authentication section, set the "Deauthorize Callback" to http://YOURSITE/facebook/deauthorize (e.g.: http://example.net/facebook/deauthorize). In the Migrations section, ensure that "OAuth 2.0 for Canvas" is set to "Enabled". It probably already will be, but double check. The default settings should suffice for everything else. Setup (StatusNet side) ====================== To enable the Facebook Bridge plugin, add addPlugin('FacebookBridge'); to you config.php. Next login to your StatusNet site as a user with the administrator role, and navigate to the admin menu. You should see a new tab for the Facebook admin panel, titled "Facebook". Enter your Facebook application ID and secret in that admin panel and hit save. After that, the Facebook Bridge Plugin should be ready to use.