at:urbiflock
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
at:urbiflock [2008/09/04 16:22] – elisag | at:urbiflock [2009/11/18 14:33] – elisag | ||
---|---|---|---|
Line 3: | Line 3: | ||
==== What is Urbiflock? ==== | ==== What is Urbiflock? ==== | ||
- | Urbiflock is a Facebook-like application framework written in AmbientTalk. The framework takes care of managing a user's buddy lists, called | + | UrbiFlock is a framework sculpted for the development of //pervasive social network applications//: |
+ | |||
+ | Urbiflock is a Facebook-like application framework | ||
+ | polls, etc. The framework takes care of managing a user’s social networks, called | ||
+ | |||
+ | Similar to Facebook, users can build applications and plug them into the Urbiflock framework. Several core applications are currently available in the Urbiflock framework, such as flock creators and profile viewers. The framework is currently still under development, | ||
==== Terminology ==== | ==== Terminology ==== | ||
- | * Flock: a group of proximate users | + | * Flockr: a user of the Urbiflock framework |
- | * Flockr: a user of the urbiflock framework | + | * Flock: a group of users |
* To flock: to become part of a group | * To flock: to become part of a group | ||
- | ==== Modules | + | ==== Urbiflock architecture |
- | * [[uf: | + | |
- | * [[uf: | + | |
- | * [[uf: | + | |
- | * [[uf: | + | |
- | * isNearby: physical proximity | + | |
- | * isFriend: static encoding of friendship relationships | + | |
- | * doesProfileMatch: | + | |
- | * combinators: | + | |
- | * [[uf: | + | |
- | * [[uf: | + | |
- | * [[uf: | + | |
- | A flock is defined as a list of references to ' | ||
- | Predefined Flocks: | + | The architecture of the Urbiflock framework shown below is divided in three layers: applications, |
- | * friend flockrs: isFriend | + | {{ :uf:urbiflock_architecture.png? |
- | * nearby flockrs: isNearby | + | |
- | * nearby friend flockrs: isFriend & isNearby | + | |
- | ==== Architecture ==== | + | The application layer includes several core applications which are currently available in the framework such as flock and profile editors, and several users applications such as //I rate you// (IR8U) that allows users to ask proximate users to rate them on a certain subject, and // |
- | An ad hoc RETE-network. Events | + | The infrastructure layer consists of three low-level abstractions on which the framework core is based: a RETE engine which orchestrates the flock composition, and the service discovery and communication APIs to discover and communicate with nearby applications, respectively. |
- | * discovery: '' | + | |
- | * profile changes: '' | + | |
- | * friend changes: '' | + | |
- | These events are received by the local flockr user object and propagated to all local proximities. Proximities translate these events into addUser / removeUser events to be processed by flocks. To process these events, flocks register themselves on their dependent proximity. | + | In the rest of this subsection we list the relevant parts of the Urbiflock framework. |
- | As a first implementation of the RETE-network, | + | * [[uf: |
- | + | * [[uf:profiles|Profile]]: manage user's profile and cache profiles of other flockrs | |
- | < | + | * [[uf:flock|Flock]]: a loosely defined group of users. |
- | def flockrTemplate | + | |
- | | + | |
- | def age := constraint: { _ < 25 }; // must be younger than 25 | + | |
- | | + | * doesProfileMatch: |
- | | + | |
- | | + | * [[uf: |
- | // address may have arbitrary other data | + | * [[uf: |
- | }; | + | * [[uf: |
- | def greet(); | + | * [[uf: |
- | } taggedAs: [ Flockr | + | * [[uf:iflocku|IFlockU]]: |
- | </ | + | * [[uf: |
+ | * [[uf: | ||
==== Applications ==== | ==== Applications ==== | ||
- | * [[uf: | ||
* [[uf: | * [[uf: | ||
+ | * [[uf: | ||
+ | * [[uf: | ||
* [[uf: | * [[uf: | ||
* [[uf: | * [[uf: | ||
+ | * [[uf: | ||
+ | |||
+ | ==== Target Platforms ==== | ||
+ | Rather than building a platform-independent framework, our aim is to assist in the rapid development of pervasive social networking applications. The Urbiflock framework has been entirely written in the AmbientTalk language. As such, no configuration is required to be able to quickly script new applications on it once AmbientTalk is running on the target platform. | ||
+ | |||
+ | AmbientTalk requires a regular J2SE Java Virtual | ||
+ | Machine supporting version 1.3 or higher. The implementation also runs on the Java 2 micro edition (J2ME) platform, under the connected device configuration (CDC). | ||
+ | |||
+ | We have done some test to deploy our framework on HTC touch cruise pda's. In order to configure your HTC Touch device for our framework you can follow the instruction [[private: | ||
+ | |||
+ | We are currently working on deploying our framework on HTC Hero, a phone running on the Android platform. | ||
+ | |||
+ | ==== Development ==== | ||
- | ==== To think about ==== | + | * [[uf: |
- | * [[uf: | + | * [[uf: |
- | * [[uf: | + | * [[: |
+ | * To think about: | ||
+ | * [[uf: | ||
+ | * [[uf: |
at/urbiflock.txt · Last modified: 2015/02/04 19:06 by elisag