Giter Site home page Giter Site logo

kendra_saracen_trial's Introduction

SARACEN

SARACEN, that stands for “Socially Aware, collaboRative, scAlable Coding mEdia distributioN", is a research initiative funded partially by the Information Society and Media Directorate General of the European Commission under the Seventh Framework programme.

Saracen Node Architecture

Among the goals of the SARACEN project are the provision of specifications and reference implementations for video distribution and social networking via a peer to peer network. The SARACEN platform is a multi-tiered conglomeration of software clients communicating via common, shared APIs, with a loosely-coupled architecture to ensure the possibility for future upgrades and robustness with no single point of failure.

Client Browser: Web GUI

Providing context for the end-user P2P video experience, HTML5, Javascript, and CSS code running in a compatible browser on an OS with required plug-in and software daemon installed communicates with a trial website or search server. Pages (apps) are requested from the trial website and responses are packaged as JSONP and CSS. jQuery plug-ins communicate with search server using the Javascript API (JSAPI).

Javascript libraries

The JSAPI provides an interface to control and monitor the local P2P node, query compliant search servers for making requests via the Web GUI, and handle metadata for the current session. An extensible jQuery-based plug-in architecture using standard JSONP data format provides for anonymous callbacks and chaining of multiple request handlers, allowing extensive user customization. The JSAPI can communicate with the local P2P node, search server, and trial partner websites.

Trial Website

A website hosts SARACEN content (HTML, javascript including jQuery plug-ins, CSS) for the purposes of testing, scripts or servlets running within the trial website container communicate with a compliant search server via web service requests. A standardized RESTful protocol should be used for querying the search server, using a JSONP-based format for data encapsulation which allows for graceful failover and future expansion.

  • Overview of registration process:
    • User signs up and authorizes the Website (via OAuth, FaceBook Connect, etc)
    • Websites fetches his/her:
      • Media preferences
      • Profile information (age, location, etc)
      • Contact lists
    • Website periodically polls those services for updates

Search Server

A search server takes contexts (user profiles and rules) requested by a trial website or Web GUI and returns recommendations and/or search results. A request from the JSAPI with any additional jQuery plug-ins is made using HTTP content negotiation using a RESTful URL and any content-specific parameters. A compliant response is encoded as a JSON object including status and/or control codes and may include references to audiovisual and metadata content from other nodes within the P2P cloud.

kendra_saracen_trial's People

Contributors

klokie avatar

Watchers

João Pedro Taveira avatar James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.