Vz:Doc:IpControl

From M1Research

(Difference between revisions)
Jump to: navigation, search
(Commands)
Line 1: Line 1:
IP Control protocol is simplest way for <b>VZ</b> control.
IP Control protocol is simplest way for <b>VZ</b> control.
-
By default <b>VZ</b> uses 8001 IP port for that service. To connect to this port and send commands you need a telnet client program. Find appropriate "telnet" program for operating. "putty" is nice free program.
+
By default <b>VZ</b> uses TCP/8001 port for shell style control protocol and UDP/8002 for non-interactive datagram proto.  
 +
 
 +
=UDP messages==
 +
 
 +
This protocol provides fast and sessionless control type. Due to binary nature of command data block you need to use <b>vzCmdSender.exe</b> program. Some examples:
 +
load new scene
 +
<pre>vzCmdSender.exe localhost LOAD_SCENE "./projects/demo1.xml"</pre>
 +
Set text fields
 +
<pre>vzCmdSender.exe localhost SET text_2 s_text "Senior Deputy Officer" SET text_1 s_text "Vasilij Pupkin"</pre>
 +
start animation
 +
<pre>vzCmdSender.exe localhost START_DIRECTOR main 0</pre>
 +
continue (hide) animation
 +
<pre>vzCmdSender.exe localhost CONTINUE_DIRECTOR main</pre>
 +
 
 +
=TCP shell==
 +
 
 +
To connect to TCP/8001 and send commands you need a telnet client program. Find appropriate "telnet" program for operating. "putty" is nice free program.
==Connecting==
==Connecting==

Revision as of 07:30, 26 January 2009

IP Control protocol is simplest way for VZ control.

By default VZ uses TCP/8001 port for shell style control protocol and UDP/8002 for non-interactive datagram proto.

Contents

UDP messages=

This protocol provides fast and sessionless control type. Due to binary nature of command data block you need to use vzCmdSender.exe program. Some examples: load new scene

vzCmdSender.exe localhost LOAD_SCENE "./projects/demo1.xml"

Set text fields

vzCmdSender.exe localhost SET text_2 s_text "Senior Deputy Officer" SET text_1 s_text "Vasilij Pupkin"

start animation

vzCmdSender.exe localhost START_DIRECTOR main 0

continue (hide) animation

vzCmdSender.exe localhost CONTINUE_DIRECTOR main

TCP shell=

To connect to TCP/8001 and send commands you need a telnet client program. Find appropriate "telnet" program for operating. "putty" is nice free program.

Connecting

[verem@elbrus reports]$ telnet vz-dev 8001
Trying 10.1.5.23...
Connected to vz-dev.internal.m1stereo.tv (10.1.5.23).
Escape character is '^]'.
ViZualizator (vz-1.0-release) [tcpserver]

vz in$>

As use can see vz service is online and is ready to accept commands.

Commands

NOTE! Tune your telnet program for UTF-8 characters.

Each command sent to VZ has javascript-like structure. I try to descibe most usefull commands format with examples.

  • renderman.load(<scene_name>)

Perform scene loading into rendering engine, for example:

vz in$> renderman.load(./projects/demo1.xml)
vz out$> OK!Load
  • tree.function.<function_id>.<parameter_name>=<value>

perform parameter setting for function, for example:

vz in$> scene.tree.function.text_1.s_text=Prived Medved
vz out$> OK
vz in$> scene.tree.function.text_2.s_text=Hi Man!
vz out$> OK
  • tree.container.<container_id>.visible=<value>

Container visibility control

  • tree.motion.director.<director_id>.start([<position>])
  • tree.motion.director.<director_id>.stop()
  • tree.motion.director.<director_id>.continue()
  • tree.motion.director.<director_id>.reset([<position>])

Directors (animation) control

For example:

Start animation on director main.
vz in$> scene.tree.motion.director.main.start()
vz out$> OK
Continue animation on director main after pausing.
vz in$> scene.tree.motion.director.main.cont()
vz out$> OK
  • tree.motion.timeline.<timeline_id>.<t1|t2|y1|y2>=<value>

timeline modification.

Personal tools