Facebook Timeline Aggregations Filters not working - facebook-timeline

I'm creating aggregations and setting a filter in the advanced section.
eg: x.category == Style
where x is an object defined in the open graph section of my app and catgory is a custom variable defined for that object
These aggregations don't seem to work. I'm definitely passing the category variable to facebook via the og tags. I can validate that because I use {x.category} in the caption field and it shows the right category. I've changed the aggregation to show actions and objects and neither seem to work. The aggregation box would just not show at all.
Any help is appreciated.

We reached out to the Facebook team and apparently this is a critical bug and they're working on a fix.

Related

How to correctly configure an Open Graph story with map attachment?

In a test app I've set up an object (race) and an action (run). I'm now trying to set up a story that combines both of these.
Ideally the race object references a place on my app. But I've been experimenting with many configurations trying to get this to work — none successfully.
In the 'edit attachment' popup is a field 'highlighted points'. I believe this should provide a dropdown list of selectable options? It currently is not, and if I type free text into this field, it is not saved.
What am I doing wrong?
The race page on my app includes the following:
And the course pages include
>>>' />
>>' %> />
On Facebook, course is configured as a Place, race has the course property assigned. But I am unable to select race.course:location in the map popup.
I have also tried various configurations, including defining the lat/lon explicitly on the race page and defining appropriate properties on FB.
I am still unable to select the highlighted points value.
Am I missing something?
Have a look at the answer at
Open Graph Map layout
This should be able to guide you.
Also
https://developers.facebook.com/docs/reference/opengraph/object-type/place/#properties

How to search Facebook's "invitable_friends" results

I have a Facebook app, and I'd like to allow my users to invite their Facebook friends to my app. The proper endpoint is /me/invitable_friends which is working well. But towards the bottom of that doc page, they recommend implementing a "search box" to filter the results, yet they don't offer any example of how to do this. I've searched around and haven't found anything.
It doesn't appear as though you can pass additional params for filtering the results. Obviously I can filter the results after the fact, but that's not scalable since the API only returns ~20 users at a time. That limit is modifiable (I believe), though it's of course not wise to bump it too high.
So how can I build a search box interface if I can't pass the search text to the endpoint? I must be missing something.
Thanks in advance.
PS - I'm using the JS SDK.
You should probably file a bug.
Based on the documentation the default size is 1000 records (average Facebook friend list size is 300-400)
If you don't see the next parameter at the end of the result under paging then there are no more results.

defining object types in open graph for facebook application

I wish to develop an application(facebook) which can publish the current actions of user on my website to his timeline.
Currently , I am able to post updates , but they are not dynamic. I mean I am unable to post the exact price and product name as searched by our user.
I will explain a bit through an example pic
I have set two custom properties Product:prodname and Product:price thinking that it will help me in sending the actual product user has searched and the price of the result he had obtained.
Now, I wish the preview to accept 2 variables prodname and price.
Am I on the right path ? Because facebook is not accepting the singular noun I submitted !
Please suggest and comment, if I am unclear in my question !!
I resolved my problem. The mistake I was doing was that I was setting custom properties to the product(object). However, actually, we need to add custom properties to the compare(action) instead. Finally we need to send the value of the custom properties to the open graph. Just concat it with the open graph url.
Here is a pic explaining the same :-
Snapshot of the page defining the object :-
Snapshot of the part defining the object preview:-
and then the final desired result :-
I don't think the Open Graph supports adding custom properties like that.
You should edit the Preview object to fill out the data or using an existing Product object url.

Open Graph Aggregation not previewing or posting

We have created a application that has a few open graph actions available for it.
One of our actions have been approved,the action posts perfectly and aggregating on the user timeline is great as well.
Our 2nd action has been approved and the action posts perfectly, but the aggregation is no where to be found.
The confusion comes in because we have a staging/sandbox app that we use to test out features before releasing them, and the EXACT same settings in the OpenGraph app setting panel, produce the desired results on the staging/sandbox app but do not work for the production version.
Seeing as the aggregation settings page was identical we checked the sample data popup.
The sandbox app correctly previews the aggregation,
while the production app show the default image that displays before you put any sample actions/objects in.
The aggregation is using a filter but I have double checked that the filter is correct. I have also removed the filter to see if I had somehow made a mistake.
Also, this is not a problem with the publishing of the action, as the action is still appearing on the newsfeed, timeline and other areas where we'd assume to see it.
Has anyone had this problem before?

Facebook Graph API SEO Comments and Profanity Filter

I'm trying to integrate the Facebook comments left on our site in a way in which the content can be crawled by search engines and also for people (although I highly doubt there will be many) who don't have Javascript enabled on their browser.
Currently our Facebook comments are displayed via the use of the Facebook comment social plugin (using the <fb:comments href="MY_URL" num_posts="50" width="665"></fb:comments> tag). This ends up rendering an iFrame (which are mostly ignored by search engine crawlers) so the plan is to render this information and format it with basic HTML. To do this, the comments are pulled using the Graph API - this is then only be displayed to crawlers and people with Javascript disabled.
This all works nicely using the Graph API call (https://graph.facebook.com/comments/?ids=MY_URL), parsing the JSON result and displaying it on the page. The problem is that the <fb:comments> approach filters our results based on a blacklist we have set up on one of our Facebook Apps. The AppId with the relevant blacklist is stored on the page using metadata (<meta property="fb:app_id" content="APP_ID"/>) which the <fb:comments> control obviously must somehow use to filter the comments.
The problem is the Graph API method does not filter any results as I guess no blacklist (or App Id containing a blacklist) is specified. Does anyone know how to specify a Facebook App ID to the API call URL or of another way to not fetch commnents back that violate the terms of the blacklist?
On a side note, I know the debate about filtering content in comments rages on but it is a management decision to implement the blacklist, and one that I have no influence in changing - just incase anyone felt the need to explain the reasons why content filtering is or isn't a good idea!
Any thoughts on a solution?
Unfortunately there's no way to access a filtered list of comments using the API - it might be a reasonably request to have this in the API - you should file a wishlist item in Facebook's bug tracker
Otherwise, the only solution I can think of is to implement your own filter on your side when retrieving and displaying the comments from the API.
According to the Comments plugin documentation the filter on Facebook's side is implemented as a simple substring match, so it should be trivial to implement.
A fairly simple regular expression match should be able to check each comment against a relatively long list quickly.
(Unfortunately, the tradeoff here is that implementing a filter is easy, but you'd also need to write an interface so that whoever's updating the list of disallowed words can maintain the list for both the Facebook plugin, and your own filtering.)
Quote from docs:
The comment is checked via substring matching. This means if you blacklist the
word 'at', if the comment contains the sequence 'a' 't' anywhere it will be
marked with limited visibility; e.g. if the comment contained the words 'bat',
'hat', 'attend', etc it would be caught.
Pretty sure there is no current way of doing this from the graph API, the only thing I can suggest is taking the blacklist and build your own filter