Tuesday, July 15, 2008

Beginnings of Bluetooth

Further developments have been made on the social network application aspect. I added links to movie information on The Internet Movie Database and links to those friends' profiles who are listed. The application outlined below is now working on both Bebo and Facebook. Rather interestingly, Bebo has its own markup language - SNML, but works perfectly well with Facebook's FBML. The process of porting a Facebook application to Bebo is very doable.

In order to make the first steps towards allowing users to request movies via Bluetooth by using their phones as remote controls, I experimented with Bluetooth device discovery. PyBluez (freely available under the GNU General Public License) allows Bluetooth applications to be created using Python. I initially used this to detect Bluetooth-enabled mobile devices and print their Bluetooth addresses and names to console.

The idea is that a users' Bluetooth address would be used to look up their Bebo or Facebook credentials on the mapping database mentioned below, so I altered the program to insert the addresses into a list for storage purposes. In addition, I wrote this to a file entitled "index.html" and enclosed it in html tags. Another program runs this sequence of steps, then runs a local Python web server. Upon opening my web browser and requesting the "index.html" file, nearby Bluetooth addresses are listed. My next port of call will be to make this a dynamic process so that the browser knows at all times what mobile devices will be close to the set-top box.

Monday, June 30, 2008

Accomplishments as of June 30th

The first of my tasks was to get basic PHP script (the language I intend to use) running from my account on the UCD Netsoc server. I then set up a Facebook application on which to display the generic "Hello World!". I find the Facebook Developer website and the w3schools tutorials for PHP and MySql increasingly excellent resources as the data I wish to display becomes more complex. The information I work with comes from two databases. The function of the first is to map Facebook IDs to VidAs IDs and store the names of users. The second has two tables: one to house data related to video content and the other to keep track of download events. In order to enable testing of whatever queries I might make, I filled these databases with random data. Using the MySql Query Browser was very helpful. It allowed me to quickly check if my queries were returning the correct results and make alterations through the graphical user interface.

Having thought about the relationships between data items, I used a series of queries to extract certain data to push to Facebook. My application now has a title (VidasFB) and two tabs with dynamic highlighting. One of these lists the ten most recent downloads of connected friends (e.g., Molly Hogan and Sheila Ward downloaded The Shawshank Redemption (1994) on 2008-06-24 13:56:01), while the other details the ten most popular downloads (e.g., The Godfather (1972) downloaded twice, watched by Maureen Gavin, Rose Conway, Anne Fitzgerald, Kathleen Daly and Francis Semple).

The next step will be to develop an interface to the VidAs system so that video content can be accessed. This will be done via set-top box. By means of Bluetooth, users will request a movie to download and the set-top box will register who was present for the watching of the film. This information will then be available for the Facebook application, thus adding to social connectedness.

Friday, June 27, 2008

Project Overview

A peer to peer video distribution platform named VidAs is being developed by UCD's Performance Engineering Laboratory. Its purpose will be to distribute large content libraries on a considerable scale. My ODCSSS project involves integrating this system with Facebook. The required capabilities include:
  • mapping between VidAs and Facebook user IDs;
  • showing most recent downloads of video content among connected users;
  • identifying popular content among friends;
  • facilitating access to such content by developing an interface to the VidAs system.
This project will enable connected friends to remotely share video viewing preferences, thereby enhancing social connectedness.

Supervisors:
Dr. John Murphy
Dr. Seán Murphy
Dr. Hamid Nafaa