Screen Service ===================== The screen service provides acces to the (on/off) states of multiple screens in the apartment. This is solved using the corresponding machines enery management (`dpms `_) and `xset` via `ssh`. Related resources ----------------- Component repository: - Browse component repository: `screenservice `_. - ``git clone https://projects.cit-ec.uni-bielefeld.de/git/lsp-csra.utils.git`` System startup: - The screenservice can be found in ``lsp-csra-base.sh`` on the ``base`` tab. - The component script is called ``screenservice``. Screens ----------------- Currently the following screens are registered on the following `root scopes`. ========================== ============================== Monitor Id (host) Root scope ========================== ============================== Hallway Flobi (Entrance) ``/citec/csra/home/hallway/entrance/screen/`` Kitchen Flobi (Assistance) ``/citec/csra/home/kitchen/assistance/screen/`` Living room TV ``/citec/csra/home/living/hometheater/screen/`` Living room Beamer ``/citec/csra/home/living/lounge/screen/`` Living room Window ``/citec/csra/home/living/window/screen/`` Control room Tv's ``/citec/csra/control/introspection/screen/`` Control room BCO ``/citec/csra/control/bco/screen/`` Control room Vdemo ``/citec/csra/control/vdemo/screen/`` ========================== ============================== Interfaces ---------------- All following scopes need to be apended to the screens root scope to access it. The informers are used to publish the monitors state changes. Changes are published on: =============================================== ==================== Scope (Informer) Type =============================================== ==================== ``../status`` `Screen`_ =============================================== ==================== .. _Screen: http://docs.cor-lab.de//rst-manual/trunk/html/generated/sandbox/package-rst-homeautomation.html#rst.homeautomation.unit.Screen Local servers can be used to request or set the screens status. The PowerState method is provided to satisfy the api of homeautomation units. =========================================== ================ ================ Scope (Local Server) + Method Parameter Type Return Type =========================================== ================ ================ ``../ctrl/setPower()`` `PowerState`_ ``../ctrl/getPower()`` ``../ctrl/setStandby()`` `StandbyState`_ ``../ctrl/getStandby()`` `StandbyState`_ ``../ctrl/requestStatus()`` `Screen`_ =========================================== ================ ================ .. _PowerState: http://docs.cor-lab.de//rst-manual/trunk/html/generated/sandbox/package-rst-homeautomation.html#rst.homeautomation.state.PowerState .. _StandbyState: http://docs.cor-lab.de//rst-manual/trunk/html/generated/sandbox/package-rst-homeautomation.html#rst.homeautomation.state.StandbyState Examples -------------- Check the status of the entrance screen: .. code-block:: bash :emphasize-lines: 1,4 > $prefix/bin/rsb-toolscl call \ -I $prefix/share/rst0.1*/proto/sandbox \ -l $prefix/share/rst0.1*/proto/'**/Screen.proto'\ 'spread:/citec/csra/home/hallway/entrance/screen/ctrl/requestStatus("")' # Id : "mia" Power-State : # Value: ON Standby-State: # Value: RUNNING Label : "mia"