Semantic-based recommender Facebook application - facebook

As a project of this semester my friend and I are thinking to make a semantic-based recommender Facebook application. For example, if I wanted to go "a trip to Europe", this application is intended to do the following: go search in my friends list and gives me back all photos albums having the name "Italy Travel" or even only containing a comment about "Eiffel Tower", my friends statuses related to anything in Europe, notes of my friends, links they have liked in other websites and other activities that show up in their news feed. And same goes if I want to watch a movie, read a book or study a subject...etc.
And my question is:
Is such thing possible to be
achieved within 3 months? knowing
that we have only the very basis
about Facebook API and semantic
related subjects.
If it is, what Ontology can we rely
on? And what other concepts should
we have as a starting block?

In 3 Months Most probably yes (depends upon how much you already know about Facebook API).
Things you should know before embarking on journey to develop this (Some i think are significant enough..)
Either you can go about developing whole Interaction Code between your server and Graph API yourself.
Or use some SDK that are already out there.(Some are mentioned in Facebook docs) Like Facebook C# SDK for C#.
Understanding of FQL and Graph API (Make some small project first to try and test things like getting user friend list).
Basic understanding of HTTP GET and POST requests and how to construct them in language of your choice.
Parsing JSON in your language.
Get a print out of documentation of selected topics for offline reference (I did that...)

Related

How to retrieve Facebook home news feed for apps?

I am currently attempting to retrieve the news feed from my Facebook home feed to include into an app. I know this used to be able to be done with the API however I have heard that it has since been removed. Is there any other way that you know of that would work or has it been added back into the API? It doesn't make sense why they would remove it.
No, there is no way to get a user’s feed via API. That used to be possible in the very early days (API v1), but has long since been removed.
It doesn't make sense why they would remove it.
Apart from user privacy (I don’t want my posts getting analyzed by some shady app with a developer located in $godKnowsWhere, just because they appeared on the feed of a friend of mine who might be using questionable apps), Facebook considers this a “core feature” – and 3rd-party apps are not supposed to replicate those in the first place. Facebook wants to make money from showing me ads when I view my feed, so allowing any other app to perform the same functionality would just mean loss of revenue.

Accessing User 'Most Listened To' using Spotify / Echo Nest / Facebook API

I want to know if I can access a user's play history (more specifically what songs they listen to the most) for an app. The app I am building can perform the same goal with iTunes using their built-in play counter. I know Spotify uses a similar counter, but I assume for privacy concerns they don't want to deal with privacy concerns from concerned users. However, I saw a few instances where it was suggested that this task could be accomplished using Facebook's API, or Echo Nest's API. Please let me know if anyone has some constructive suggestions toward finding a way to legally obtain a particular users 'most listened to songs', or something to that effect.
SB
There's some documentation about Open Graph Music on the Facebook Developer homepage:
https://developers.facebook.com/docs/opengraph/music/
Baseline is that you only can request a User's play history if he gave you app the explicit right to read his data.
The relevant permissions would be
user_actions.music https://developers.facebook.com/docs/facebook-login/permissions/v2.1#reference-user_actions_music
user_actions:{app_namespace} https://developers.facebook.com/docs/facebook-login/permissions/v2.1#reference-user_actions__app_namespace_
Then, you should be able to request
GET /me/music.listens
according to https://developers.facebook.com/docs/reference/opengraph/action-type/music.listens/ You'll need to perform the aggregation of the most played songs/artists yourself, because there's no endpoint for that.

collect picture from comments in facebook page status

I currently need to collect pictures-comment (someone comment by pasting a picture) from facebook page group
I have done some research and find that
1.Support for this hasn't yet been added to the Graph API and as with many of the other messaging APIs, it's currently only avaialable for testing (i.e you must be a developer of the app to use it presently)
from
View attachments in threads
2.You have to use the old php SDK until graph supports attachments
from
Posting Attachment Facebook Graph API
could any one provide some codes to me?
I need to know
Are the two approaches really works?? If yes, then... If no, I guess i will need to write/find a crawler (but it again sounds difficult as facebook group page is dynamic web)
What should I do if I want to follow 1st approach?
Should I register as developer and set up an app and...? (I have no experience in setting up facebook app and would appreciate any useful step-by-step tutorial)
If I am going the 2nd approach (php SDK), are there are tutorial as I have no idea what should I do next.
I know java, c++ and little js but facebook apis are something really new to me.
Really appreciate any help.

Facebook Application Notifier in Newsfeed

Does anyone know how these kind of functionality can be implemented?
How can we get PlayNow kind of link ( I want to add my own custom link at that place)
How to get user images on this kind of aggregation.
As far as I can tell, this is a custom implementation from Facebook that you cannot control. Facebook provides custom aggregation on the newsfeed for certain popular actions, such as playing games, reading news or watching videos. As you can see in the aggregation you have posted, each app is different.
When a certain set of users read news using your app, and Facebook chooses to display an aggregation of "X and y more friends recently read articles" on those users' friends' news feeds, your app might come in that aggregation. The "read now" button comes on its own, since Facebook understands what your object is.
The aggregations you can control are those that consist of only your app, and you can do that in the Open Graph panel for your app on the Developer site. Just go into aggregations and design it to your choice. This is how I implemented it for myself:
This is how it would look like in a user's Home Feed. The text, "Share your twocents about Dil Chahta hain..." can be set up according to your requirements.
Secondly, you can control the aggregation for your own app on a user's timeline. This is how my app's aggregation looks on a user's timeline. Do note that currently, only two aggregations are shown for a user, instead of 3 as is displayed in my image (which was taken prior to the approval stage).
That is an aggregation that facebook is making for a specific type of applications: Games.
You can set your app as a Game in the app settings, first tab (Basic) first section (Basic Info) in the Category field.
If you do that then facebook should include your "game" when they aggregate this feed story to friends.
If you do that how ever then you can't change the text from "Play Now", as far as I'm aware.
Using the open graph you can define the obejcts which your app uses and the actions users do on them.
Then you can control how the stories produced by your app are aggregated into the timeline of a user.
The official guide is pretty straight forward and have good examples that you can follow to understand how things work.
If you have a more specific question regarding the open graph then ask away.

Creating new facebook apps with graph api?

To my knowledge it isn't possible to create new apps with the graph api from facebook.
But i have seen several tab makers which are apparently able to generate new apps (one of them is the timeline tab maker from 247GRAD). Is this huge number of apps really manually generated?
I would appreciate it very much if someone could give me a hint, how those apps work.
It is not possible to create an application using Graph API.
What you see in the case of Page Tab Applications is generally one application (or several just to have different application icons/images) displaying different content based on page id (from signed_request) for Page is running on.
Many companies are today oriented to design Facebook apps (or tabs) to be integrated in profiles, groups and fan pages. Well Facebook encourages apps development by making easy to do with Graph API with any programming language like PHP5 at first, jQuery, JavaScript, Java, XML...
And Apps or tab makers as you said are developed to help to generate new apps, I think it would boring for a developer to create an app for form contact everyday for each new customer, so with some magic (sure with any programming language) he'll can generate many apps.
So it's a Facebook app that creates Facebook apps!
You could learn about Facebook Graph API from Facebook Developers Documentation on https://developers.facebook.com/docs/reference/api/
And learn this tutorial from Facebook on https://developers.facebook.com/docs/opengraph/tutorial/ or from an other web sites (Try always to read new tutorials because Facebook API always changes).
Also you can read books, I advice to read this at first : http://books.google.tn/books?id=MnbpygAACAAJ&dq=inauthor:%22Shashwat+Srivastava%22&hl=en&sa=X&ei=c5RoT81ek_fhBNXZgbcJ&ved=0CC8Q6AEwAA and second, http://books.google.tn/books?id=Ec9OkpsrCf8C&pg=PA131&dq=facebook+graph+api&hl=en&sa=X&ei=tpBoT5uKG-OO4gTb-ajaAg&redir_esc=y#v=onepage&q=facebook%20graph%20api&f=false
Don't hesitate to ask.
Best regards,
Ali