Documentation_GSNv1.x - LSIR/gsn GitHub Wiki
Work in progress
Basics
- The book of GSN (For understanding the fundamentals of GSN)
- Ali Salehi's PhD Thesis, 2010 (in particular Chapters 1, 3 and 4) to understand GSN's philosophy, internals and how window processing works in GSN
- A syntax reference for the virtual sensor xml description file
- A reference on how to PUSH data out of GSN;
- Addendum: an example on how to [push to mobile phones](push service), using the dedicated push service
- Installing GSN
- Step-by-step installation of GSN on a Linux host (Ubuntu 12.04 LTS)
Accessing data
- A reference for the standard GSN Web Service
- also see how to enable the web service
- GSN REST Interface
- Server Side Web Interface
Wrappers
Core Wrappers Of GSN
| Wrapper Name | Wrapper Id | Remarks |
|---|---|---|
| Local-Wrapper | local | |
| RemoteWrapper V2 | remote-rest | Restful Streaming |
| RemoteWrapperPush V2 | remote | Push-based Streaming |
| ZeroMQWrapper | zeromq | remote and local publish subscribe direct access to virtual sensors output |
| TinyOS | tinyos-mig | |
| CSV-Wrapper | csv | |
| Memory-Usage | memory-usage | |
| system-time | system-time |
Optional Wrappers
| Wrapper Name | Wrapper Id | Remarks |
|---|---|---|
| Direct Remote Push | remote-direct | Stateless Push for sporadically connected sensors |
| HTTP-Get | http-get | |
| Serial | serial | |
| UDP | udp | |
| USB-Cam | usb-cam | |
| RSS-Feed | rss | |
| MultiFormat | multiformat | Custom protocol analyzing |
| GPSTest | gps-test | |
| Swisspegel | swisspegel | |
| STSPiezometer | stspiezometer | |
| Replay | replay | The new local and remote wrappers have the replay built in. |
| Toa5 | toa5 | |
| Grid data wrapper | grid | Grid data wrapper |
| Image file wrapper | imagefile | Image file wrapper |
- Wrapper's life cycle (useful if you want to write a new wrapper for GSN)
- An introduction on how to write a new wrapper
- Template Wrapper
Processing Classes
Core Processing Classes Of GSN
| Name | Processing Class | Remarks |
|---|---|---|
| Bridge | gsn.vsensor.BridgeVirtualSensor | GSN's default processing class. |
| SMA Data Cleaner | gsn.vsensor.SMACleaner | A Sample Simple Moving Average Data Cleaner. |
Optional Processing Classes Of GSN
| Name | Processing Class | Remarks |
|---|---|---|
| GPS Parser | gsn.vsensor.GPSNMEAVS | |
| gsn.vsensor.EmailVirtualSensor | ||
| SMS | gsn.vsensor.SMSVirtualSensor | |
| Stream Exporter | gsn.vsensor.StreamExporterVirtualSensor | |
| VOIP | gsn.vsensor.VoipVirtualSensor | |
| R | gsn.vsensor.RVirtualSensor | |
| Chart | gsn.vsensor.ChartVirtualSensor | |
| WebInteractive | gsn.vsensor.WebInteractiveVirtualSensor | |
| ScheduledBridge | gsn.vsensor.ScheduledBridgeVirtualSensor | Bridge VS with scheduled output |
| ScheduledStreamExporter | gsn.vsensor.ScheduledStreamExporterVirtualSensor | Stream Exporter with scheduled output |
| Scriptlet | gsn.processor.ScriptletProcessor | Define the Processing Class logic with a scriptlet in the configuration file |
| DataClean | gsn.vsensor.DataCleanVirtualSensor | Datacleaning processing class |
| GridRenderer | gsn.vsensor.GridRenderer | Grid renderer processing class |
| Modelling | gsn.vsensor.ModellingVirtualSensor | Attaching models to data-streams |
| GridModel | gsn.vsensor.GridModelVS | Build a grid from a model |
- An introduction on how to write a new processing class
- Template virtual sensor
Scriptlet Processor examples
| Scriptlet | Description |
|---|---|
| E-mail-Scriptlet | An example of how to implement flexible email notification based on the scriptlet processor. |
| twitter-scriptlet | An example of how to implement twitter notification based on the scriptlet processor. |
| periodic-scriptlet | An example of how to implement a process which is executed periodically based on the scriptlet processor. |