1.20.2. Record Server

The rsb recordserver consists of an rsbag record process that stores component communication data from all scopes in the apartment (with some Exceptions).

As a base component, the server is running 24/7 and awaits recording commands. Its main purpose is to start recording whenever it is needed. Currently, the recording is triggered only by the Automatic Recording component but in principle it can also be used to record study data for example.

Warning

Currently (with rsb <0.13), the record server crashes after a certain amount of events. Make sure to restart it from time to time.

1.20.2.2. Interfaces

The component can be controlled via method invokation only. Recording can be started (and stopped/resumed multiple times) after a file has been successfully opened. If the recording has been stopped, the file should be closed again.

Scope (Local Server) + Method Argument Type Return Type
/logger/rsbag/all/open() String: filename void
/logger/rsbag/all/start() void void
/logger/rsbag/all/isstarted() void bool: recording?
/logger/rsbag/all/stop() void void
/logger/rsbag/all/close() void void

1.20.2.3. Exceptions

Not recorded are raw audio and video packets. Apart from most raw video data being excluded from the main spread ring (see e.g. Hookah, RGBD Grabber) and therefore not reorded, a filter is applied additionally. In particular, it consists of the following scopes:

'and :children #.(list (rsb.filter:filter (quote (:and
    ((:not (:scope :scope "/citec/csra/home/kitchen/video")))
    ((:not (:scope :scope "/citec/csra/home/hallway/entrance/video")))
    ((:not (:scope :scope "/citec/csra/home/kitchen/assistance/asc7/audio/in")))
    ((:not (:scope :scope "/citec/csra/home/living/lounge/asc9/audio/in/default")))
    ((:not (:scope :scope "/citec/csra/home/hallway/entrance/asc10/audio/in/default")))
))))'

1.20.2.4. Examples

Record a temporary file:

tools0.12 call '/logger/rsbag/all/open("/tmp/tmprecord.tide")'
tools0.12 call '/logger/rsbag/all/start()'
# actions that you want to record
tools0.12 call '/logger/rsbag/all/stop()'
tools0.12 call '/logger/rsbag/all/close()'