Introduction Main
elements
Messages sent
and received
Graphical
interface
Scripts Reference Functions
index
Version française

Principle

Message handling is the main function of IanniX. They can be sent by cursors and triggers.

To see if the messages are actually sent or received, IanniX displays a trace in the "Messages" section of the inspector.

Triggers usually send one only message when a cursor goes past them. IanniX is limited to sending one message per millisecond maximum.

Cursors, by default, generate messages every 20 ms (but you can change this time).

Message construction

General pattern

To construct a message in IanniX, you need to follow the model below:

<protocol>://<destination>/<address> <arguments>

Protocols

Arguments

The arguments represent the useful data of the IanniX message. This is a series of variables that describe the state of an object when the message is sent. These variables are detailed in the references section for triggers and cursors.

In addition to the variables, you can of course specify values or strings directly in the message.

Finally, three global variables can be used in all messages:

Edit sent messages

To edit the message that a element has to send, click on "Edit" in the inspector after having selected the object or double-click on the object itself to display this window:

setMessage

Double-click on the message in order to modify it. Click on "-" to delete it and on "+" to add other messages.

Reception of a message

IanniX can be controlled by:

You must respect these syntaxes in order to make IanniX able to read your messages. Consult your software documentation to correctly format sending information.

All functions supported by IanniX are described in the reference.

MIDI Message Details

MIDI Note-On/Note-Off Messages

MIDI Continuous Controller Messages

MIDI Pitch Bend Messages

MIDI Program Change Messages

All functions supported by IanniX are described in the reference.

Javascript in Messages

Javascript expressions may be used in messages anywhere an argument could be used.

Basics

Examples:

Conditional Actions

Message Suppression

Errors

Recursion

IanniX can be controlled by IanniX itself (!). You can use all the protocols described above, but we recommend using OSC to communicate between two IanniX applications on network computers and use the direct command to send messages inside one IanniX application.

Example: osc://127.0.0.1:1234/iannix/setTime 11 0  or  direct:// setTime 11 0.

Copy / paste this example in Iannix to understand how the code works!
run("add curve 1");
run("setPointsEllipse current 2 2");
run("setPos current 0 0 0");

run("add cursor 11");
run("setCurve 11 1");

run("add trigger 21");
run("setPos current -2 0 0<");br/> run("setMessage current 10, direct:// setTime 11 0");