Top part:
#Page
Bottom part:
#Console
We call Boards all the panels inside Page
We call Controls all the panels inside Console
Under Console you can find Message Board and Memory
Boards and Controls are passed to the Display via URL parameters.
Display builds the interface and runs the sensors according to the parameters contained in the URL and you are ready to work.
When Display starts up it follows some easy steps:
STEP 1) check how to build the Console
Display will look for parameter c inside the URL
Depending on what it finds, it will build the Console, injecting the requested modules.
by default c=y
c can have 4 possible states
c = y console is visible
c = h console is hidden
c = n console isn't used
c = e console is empty
c = CODE console will load interface from remote location according to the CODE
Example:
default "y"
console is visible, will load default console
http://protobot.xyz/display/
declared "y"
console is visible, will load default console
http://protobot.xyz/display/?c=y
hidden Console
console is hidden, will load default console, user can open it with a button
http://protobot.xyz/display/?c=h
empty Console
console is hidden, will load default console, user can open it with a button
http://protobot.xyz/display/?c=e
startup Display excluding Console
http://protobot.xyz/display/?c=n
startup Display loading a Custom Control inside Console from a remote location
http://prototbot.xyz/display/?&c=gist-da6e8ac73c824ae86860
Once the Console is built, moves to step 2
STEP 2) Loading Sensors/modules/machines if needed (Boards)
Display can be used simply to run existing Sensors Boards
In order to use Display you must pass to it the needed informations about the Sensors you want to load.
Refer to Sensors Type to know more about the standard and Custom Sensors you can find/program
Sensors informations are passed via URL parameters using s=
Example:
in this example c isn't found, so the default Console is loaded, then 2 Sensors (type 2 and type 1) are found and created
http://protobot.xyz/display/?s=2-BTC_ETH|1-BTC_LTC
Same example with hidden Console:
http://prototbot.xyz/display/?s=2-BTC_ETH|1-BTC_LTC&c=h
2-BTC_ETH|1-BTC_LTC
means two sensors as follows:
2-BTC_ETH (Type 2 Moody Sticker for BTC_ETH)
1-BTC_LTC (Type 1 Mood Sensor for BTC_LTC)
The Display reads the list of sensors from the url, creates the relative Sensors Boards and runs them.
Accepts several types of Sensors. See Sensor Types
Note:
Usually a Control is used to create and customize instances of an object.
An instance, for the final user, shows up as a Board
This is only a difference in semantics between Boards and Controls, Page and Console, but of course you can use Display as you wish.
The point is simple, you can find a code like gist-da6e8ac73c824ae86860.2
if you inject it in s= you will see a Board
if you inject it in c= you will see a Control
why?
because normally if you share a component it may be customizable, and that's the job of a Control, but the object itself for the final consumer is a Board, so final consumer can use Control in order to create many Boards.
The module can contain a Board or a Control or both (or nothing?)
Depending on where you want to inject it it may react in different ways.
Some modules can show up where you injected them, other will force the creation of the Control or the Board by theirself.
If you find a Sensor/module you can always have fun and try injecting it in Console and see if it produces any cool Control.
Try:
http://protobot.xyz/display/?s=1-BTC_ETH
http://protobot.xyz/display/?c=1-BTC_ETH
http://protobot.xyz/display/?c=1-BTC_ETH&s=1-BTC_LTC
http://protobot.xyz/display/?c=1-BTC_LTC&s=1-BTC_ETH
Pratically some sensors are simple loadable objects with a Board, others can be enough complex to contain a Control interface showing up inside Console.
Type 1 Sensors (Mood Sensors) contain such interface to allow you to easy detect Poloniex.com pairs and to create customized instances of the Sensor.
Injecting sets of modules will allow you to combine them into easy web-apps ready to be used.
Protobot.xyz has no way to save your layout: just save the URL and you have your application!
See EXAMPLES (right menu)
You must always pay attention, injecting anything isn't a good idea!
Protobot.xyz has some security procedures you have to know, your next step is Display Security
