According to a recent statement of Facebook developers, FBML and FBJS will be depreciated since March 11, 2011 and Page tab applications are going to be built and implemented using iframes. Both canvas and tab applications are supposed to be built on the same programming model. In addition to that iframes will allow integrating social plugins and the Graph API into tab apps.
First shift from FMBL to iframes in August was declared by Facebook in August, then it slated migration for Q4 2010, and eventually delayed until Q1 2011. Meanwhile, Page tab application in iframes was being created and developers still had to use an FBML landing tab that linked away from the Page to the iframe canvas app due to impossibility of its implication.
At the present day programmers have an opportunity to change the Page Tab Type from FBML to iframe after going into the Page Tab settings of the Developer app. Whereas the Page’s admin can add the iframe Page tab app only after having gone into the Edit Page admin interface.
Signed_request parameter of Facebook has been updated with the purpose to identify visitors of tab apps more accurately which allows security improvement. When users browse to a tab app, the app will receive:
“the signed_request parameter with one additional parameter, page, a JSON array which contains the ‘id’ of the Facebook Page your Tab is hosted withina boolean (‘liked’) indicating whether or not a user has liked the Page, and a boolean (‘admin’) indicating whether or not the user is an ‘admin’ of the Page along with the user info array. Your application will also receive a string parameter called app_data as part of signed_request if an app_data parameter was set in the original query string in the URL your tab is loaded on.”
This string can be used to show the user customized content. Below is an instance of an updated signed_request:
{ "algorithm":"HMAC-SHA256", "expires":1297328400, "issued_at":1297322606, "oauth_token":"OAUTH_TOKEN", "app_data":"any_string_here", "page":{ "id":119132324783475, "liked":true, "admin":true }, "user":{ "country":"us", "locale":"en_US" }, "user_id":"USER_ID" }
An age object is now included in the user JSON object encoded in the signed_request. The object contains minimum and maximum number range of the age the user is supposed to be in order to access the application. User’s specific age is not going to be shown to developers.
Heretofore users aged less than necessary were excluded from accessing apps specified in Facebook’s alcohol guidelines by dint of FMBL tags. Now age object can be used to forbid underage users from gaining access.
More social Page tab apps can be made now thanks to the option to integrate social plugins and the Graph API. Like buttons for specific pieces of content are included by developers in order to create broadcast channels to subsets of the users. The Like button was implemented on canvas app of social game developers o let users share specific pieces of content with friends.
Thanks to Comments plugin users will receive another opportunity to provide feedback in addition to the wall and discussion board. Remarks are allowed to be left on users’ walls that could help apps grow. Friends used the tab app can be shown by dint of the Facepile and the Recommendations and Activity Feed plugins could suggest what users should do first within a tab.
FMBL Deprecations and the Developer Roadmap
Facebook is gradually removing FMBL apps. They will not be allowed to be built since March 11th, 2011. Developers will not be able to add static FBML apps as Page tabs. The efficiency of existing FMBL tab and apps will be preserved. They could be edited for the immediate future.
At the same time Facebook does not remove XFBML tags supporting social plugins that will continue to function normally.