Home

stamp edited this page Oct 30, 2011 · 13 revisions

About

Stampzilla is an homeautomation network written in PHP5 using UDP network broadcasts to communicate between scripts with JSON encoded messages.

The included (/usr/share/stampzilla) web-GUI gives the user easy access to all the components functions.

Dependencies

  • php5-cli
  • php5-gd

Names

Component

A component is a daemon that can talk with the other components in the network. Usualy we write a class that extends the component class. If you want you can write a component in what ever language you like, the only thing needed is to implement the stampzilla JSON encoded message protocol and you are good to go.

CLI

The stampzilla command is a command line interface. It is used to start and stop components, read the log, debug the network and so on.

Web GUI

Stands for web based graphical user interface. The interface is iPad compatible and is used to control components. It talks with the rest of the network and get live updates from the components.

Installation - Users

Debian/Ubuntu users

  1. Download the .deb package located in the repository under the folder /ubuntu
  2. Run sudo dpkg -i stampzilla_[version]_all.deb
  3. Done

Other users

  1. Install "php5-cli" and "git"
  2. Clone the repository with the command git clone git://github.com/stampzilla/stampzilla.git
  3. All the scripts are in the "scripts" folder. Move them to the appropriate folders.
  4. Create start/stop scripts that runs stampzilla start on boot and stampzilla stop on halt

Installation - Developers

Debian/Ubuntu users

  1. Run sudo aptitude install git-core
  2. Clone the repository with the command git clone git://github.com/stampzilla/stampzilla.git
  3. Run the install script sudo install
  4. Create a own branch git checkout -b mybranch
  5. When you want to conribute your code to the main branch, create a Pull Request!

Testing

To send a test command to the network use the stampzilla send command. The second argument is the packet url encoded. Check out the Protocol Structure page to learn more about the packets.

stampzilla send "to=xbmc-test&type=cmd&cmd=raw&jsonrpc=JSONRPC.Version"