bar

From RevSpace
Jump to navigation Jump to search

"bar" is de nickname van de IRC-client die op de terminal in de hoofdruimte te gebruiken is. Deze Irssi-instantie doet ook dienst als bot via een paar irssi-scripts. De naam "bar" stamt uit de tijd dat RevSpace nog een bar had (de eerste twee jaar). Die bar was overigens eigenlijk alleen tijdens feestjes bemenst en was verder vooral een sta-in-de-weg op de route naar de koelkast. Sinds de verhuizing van RevSpace 1 (Binckhorstlaan) naar RevSpace 2 (Spoorlaan) is er geen bar meer en gaat drinken kopen in principe altijd via zelfbediening, ook bij feestjes.

Commando's

Wil je alles een keertje uitproberen? Doe dat alsjeblieft niet in het kanaal, want dat is echt vreselijk irritant voor de rest! De bot reageert ook op privéberichten, behalve voor commando's die iets laten gebeuren op de space (op dit moment alleen !ledbanner).

Tellers:

  • !n - aantal ingecheckte ibuttons op de space (zie n)
  • !j - aantal aanwezigen op Jitsi
  • !eters - aantal eters in het topic

Sensors:

  • !temperatuur
  • !tvoc
  • !co2
  • !netfrequentie
  • !netvuil
  • !luchtvochtigheid
  • !geiger

Overig:

  • !open en !dicht - is de space nu open?
  • !ping - zegt "Pong."
  • !ledbanner - bericht op de ledbanner laten zien. (Heeft weinig zin want het valt niet echt op. Als het belangrijk is, kun je beter even bellen.)

Met authenticatie:

De commando's kunnen niet vanaf bar zelf worden gebruikt.

Als de bot op een irritante manier gebruikt wordt, kunnen we de persoon kicken, of de bot. Als er meerdere mensen irritant bezig zijn met het ding, is het kicken van de bot effectiever. De bot komt op uitnodiging weer terug in het kanaal.

Scripts

  • bot.pl handelt bovenstaande commando's af. Elk commando is een perlfunctie die on demand gecompileerd wordt, en opnieuw wordt geladen als het bijbehorende bestand is veranderd. Omdat een commandoscript een perlfunctie (sub) is, ga je eruit met return, want exit zou heel irssi stoppen...
  • saysomething.pl] gooit notices naar het kanaal; deze komen uit een tekstbestand dat continu gepolld wordt. De berichten worden voornamelijk door een extern script genaamd mqtt2irc geplaatst. Bij elk bericht wordt er 7,5 seconde gewacht of er nog een bericht komt. Berichten die elkaar snel opvolgen worden gebundeld.

Beleid

In principe is de irssi van bar vrij toegankelijk in de space. Er is ook shell-toegang onder het account bar. RevBank draait onder hetzelfde account. Op deze manier kan iedereen in principe botcommando's schrijven. Dit gaat, net als RevBank, volledig op basis van vertrouwen. In de directory ~bar/commands staat een tekstbestand genaamd RICHTLIJNEN_VOOR_NIEUWE_FUNCTIES, met daarin o.a. het verzoek om de bot alleen te gebruiken voor koppelingen tussen de space en IRC, zonder daarbij dingen te bouwen die gevaarlijk of te irritant zijn voor de mensen op de space.