Effect Server
Mikä?
Effect Server eli Tehostepalvelin on jatkoa Instansseilla aikaisemmin nähdylle Valopalvelimelle.
Tehostepalvelimen tarkoitus on tarjota Instanssin kävijöille ohjelmointirajapinta partysalin valaistukseen ja mahdollisesti muihin salissa olevien tehosteiden hallintaan. Vuoden 2023 Instanssissa salin valaistuksena on 24 RGB LED-valoa ja 4 UV-valoa.
Tehostepalvelimen lähdekoodi on saatavilla GitHubissa. Repositoriossa on myös muutamia koodiesimerkkejä.
Valojen asettelu
RGB-valot on numeroitu 0..23 vastapäivään kiertäen, alkaen lavan vasemmalta puolelta. UV-valojen numerot ovat 24..27. UV-valoja käytettäessä kannattaa pitää mielessä että valon intensiteetti on painotettu keskiarvo R, G ja B arvoista.
Protokolla
Tehostepalvelimen rajapinta valoihin on yksinkertainen viestiprotokolla, jota voi käyttää UDP-paketeilla tai WebSocket-viesteillä. Sen suunnittelussa on erityisesti pyritty ottamaan huomioon ohjelmoitavuuden yksinkertaisuus liikaa kuitenkaan rajoittamatta laajennettavuutta. Valojen ohjaukseen ei siis tarvita mitään kirjastoja, vaan tehtävään soveltuu mikä tahansa kieli, jolla voidaan lähettää UDP-paketteja tai binäärimuotoisia WebSocket-viestejä.
Valopalvelimen websocket-rajapinta on auki osoitteessa valot.instanssi:9910 ja UDP rajapinta osoitteessa valot.instanssi:9909
Rajapintakuvaus ja python-esimerkki löytyy valopalvelimen esimerkkikansiosta.