Skip to main content

A Python project that adds real time streaming to your web app's data.

Project description

Oneline

http://getoneline.com/


Overview
----------------------------------------------------------------------

Oneline is a websockets project that aims to simplifies writing client/server
socket code for ws, additionally provides layer of database. It is
made for developers who wish to experiment with the websocket standard
while trying to build practical applications.


How It works
------------------------------------------------------------------------

It uses ws4py and cherrypy in processing websocket things, the frontend
client written in javascript is the connection to web applications. The server is designed to handle it's client.


Installing
------------------------------------------------------------------------

To install oneline, you can download the code on PyPi or even GitHub (https://github.com/nadirhamid/oneline),

currently to run this, use

make

on success you should see the oneline server startup.

Recipes
------------------------------------------------------------------------

There's some recipes for Oneline, they demonstrate its pragmatic
usage in web applications or broker servers, currently they are (as of this writing)

Example 1:
LastFM Tag Streamer
- This example demonstrates streaming artists and music according to their
socially voted tags. The dataset, publicly available can be found @
http://labrosa.ee.columbia.edu/millionsong/lastfm

Example 2:
Catapult Call Streaming
- Websockets with telecom info, this will show how to
stream VoIP events, calls using oneline and Catapult's RESTful
API, documentation.


Example 3:
Wikipedia PageRank
- This application, will use PIG and Hadoop MapReduce in providing
a realtime pagerank for wiki articles, articles which are scored
with a dampening factor of 0.08 can be voted up or down

All recipes are available at

https://github.com/nadirhamid/oneline-recipes


Object Documentation
------------------------------------------------------------------------------
Geo Object
used to calculate lat,lng coords, bidrectionally or
in one.
Time
meet time ranged events
Events
General purpose SQL queries
Sound
Get input of sound based events
Generic
use oneline without a database connection


Technical Supports, requirements
------------------------------------------------------------------------------

Python Support:

currently >= 2.7 is needed

Databases, as of this writing supports:

PostGreSQL, MySQL, SQLite, CouchDB and MongoDB

It is recommended to atleast have one database connection



Old news ----------------------------------------------------------------------

Older Description:
A Python project that adds real time streaming to your web app's data.
Streaming is done through server modules which are written
in python, these will then be streamed over websockets -- using
cherrypy and ws4py. Streaming is done with a db table, which
will be used for all the module's data.

Data can be refined in a few ways. Currently, it is done
through the defined modules, geolocation and event.
The former will refine data based on geolocation(lng, lat) coordinates.
The latter is a general purpose database querier. These objects
can be used through a non commutative pipeline which
will filter data according to your needs.

Project details


Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page