RawMaterials
Copyright (C) 2008 Société des arts technologiques (SAT)
http://www.sat.qc.ca
All rights reserved.

This file is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.

RawMaterials is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with RawMaterials.  If not, see <http://www.gnu.org/licenses/>.

About OSC and RawMaterials

This document list the OSC tags RawMaterials can handle.
If you send OSC messages to a running RawMaterials on the port
it is listening to, it answers to your application acconrding to the
listing below.
For more informations on RawMaterials see http://camaro.mobilemuse.ca/~sat/

IMPORTANT NOTE : You should use a router and a firewall to prevent from being
hacked during a RawMaterials performance.

All tags RawMaterials can handle

Details about each tag and its possible response.

1) TESTING

/ping

Answers /pong.

2) AGGREGATED ITEMS

/items/list

Gets list of text, video and image items.
Answers the list of files with different OSC tags enclosed
between the tags /items/begin and /items/end.

3) RSS CHANNELS

/channel/list

Gets list of RSS channels to aggregate contens from.
Answers with the list of current channels.

/channel/add <url>

Adds a RSS channel to the feeds aggregator.
You must then enable it using /channel/enable.

/channel/enable <url> <boolean>

Enables a RSS channel.

/channel/remove <url>

Removes a RSS channel.

4) RAWMATERIALS CONFIGURATION

/config/list

Answers with the current list of RawMaterials options.

/config/set/boolean <section> <name> <value>

/config/set/int <section> <name> <value>

/config/set/string <section> <name> <value>

Changes the value of a configuration option of RawMaterials.
Their type is either int, string of boolean depending on tag.
Options could also be set using a .ini file when RawSiftAggregator.py
is started from the command line.

5) FILTERS

/filter/list

Answers with the list of filters.

/filter/enable <filter> <boolean>

Enables or disables a filter

/filter/set/int <filter> <attr> <value>

/filter/set/boolean <filter> <attr> <value>

/filter/set/string <filter> <attr> <value>

/filter/set/timestamp <filter> <attr> <value>

These four tags modify the value of a filter attribute.
An attribute can be a int, a boolean, a string or a UNIX timestamp.

6) MUSE III PLATFORM

/mobilemuse/connect <username>

Connects to the Muse III Mobile Dialog component using a user name.
/mobilemuse/auth <username> <boolean>
If the Muse III user name exists, the boolean value is 1, and 0 if not.

/mobilemuse/channels/list

Answers with the list of RSS channels the current Muse III user.

7) SYSTEM

/system/quit

Quits the RawMaterials application.