Projekt:Rezeptionistin: Unterschied zwischen den Versionen

Aus k4cg.org
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 9: Zeile 9:
* <code>!kt</code> - Zeigt aktuelle Temperatur in der K4CG
* <code>!kt</code> - Zeigt aktuelle Temperatur in der K4CG
* <code>!help</code> - Zeigt Hilfe, antwort im Query
* <code>!help</code> - Zeigt Hilfe, antwort im Query
* <code>!help</code> - Zeige Hilfe, antwort im Query
* <code>!beleidige &lt;nick&gt;</code> - Jemanden beleidigen
* <code>!schmeichle &lt;nick&gt;</code> - Jemandem ein Kompliment machen.
* <code>!private &lt;link&gt;</code> - Einen Link teilen ohne dass er im Wiki gelistet wird. (alternativ: !pr, !nsfw)
* <code>!lineart</code> - Eine kleine One-Line ASCII-Art anzeigen
* URL Title - Fetcht den <title> von http(s)-Links und postet den Inhalt in den Channel #k4cg und in den MediaWiki
* URL Title - Fetcht den <title> von http(s)-Links und postet den Inhalt in den Channel #k4cg und in den MediaWiki
 
* Fragen beantworten in Form: &lt;soll/kann/darf/muss&gt; ich * [&lt;oder&gt; *]
== Usage ==
* Einem Benutzer eine Nachricht ausrichten wenn er das naechste mal auftaucht.
 
* Sich mit NickServ auf Freenode authentifizieren*
<pre>
git clone https://github.com/k4cg/Rezeptionistin
</pre>
 
Nach dem Klonen müssen die Abhängigkeiten installiert, und eine config.ini Datei angelegt werden.
 
<pre>
cd rezeptionistin
pip install -r requirements.txt
cp config.ini.example config.ini
</pre>
 
== Configuration ==
 
Die Datei config.ini im gleichen Verzeichnis muss vor der Benutzung angepasst werden
 
<pre>
[IRC]
server = irc.freenode.net
port = 6667
nick = Rezeptionistin
ircchan = #k4cg
debugchan = #k4cgdebug
 
[HTTP]
useragent = Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_3) AppleWebKit/600.6.3 (KHTML, like Gecko) Version/8.0.6 Safari/600.6.3
 
[MediaWiki]
wikiapiurl = https://k4cg.org/api.php
user = Rezeptionistin
password = passw0rd
</pre>
 
== Service ==
 
Der Service läuft auf [[Host:troll.k4cg.org|troll.k4cg.org]] unter '''supervisor'''. Die supervisor Config sieht ungefähr so aus.
 
<pre>
cat /etc/supervisor/conf.d/rezeptionistin.conf
[program:rezeptionistin]
directory=/home/k4cg/Code/Rezeptionistin
command=/home/k4cg/Code/Rezeptionistin/rezeptionistin.py
autostart=true
autorestart=true
startsecs=10
stdout_logfile=/home/k4cg/Code/Rezeptionistin/logs/rezeptionistin.log
stdout_logfile_maxbytes=1MB
stdout_logfile_backups=10
stdout_capture_maxbytes=1MB
stderr_logfile=/home/k4cg/Code/Rezeptionistin/logs/rezeptionistin.log
stderr_logfile_maxbytes=1MB
stderr_logfile_backups=10
stderr_capture_maxbytes=1MB
environment = HOME="/home/k4cg", USER="k4cg"
</pre>
 
Sollte die Rezeptionistin aus irgendwelchen Gründen sterben, wird sie automatisch neugestartet.
 
Bewusst starten und stoppen mit
 
<pre>
service supervisor {stop|start}
</pre>


== Deployment ==
== Deployment ==


Auf [[Host:troll.k4cg.org]] wie folgt updaten:
Auf [[Host:nixe.k4cg.org]] wie folgt updaten:


<pre>
<pre>
cd /home/k4cg/Code/Rezeptionistin
cd /usr/local/rezeptionistin
git pull origin master
git pull origin master
supervisorctl restart rezeptionistin
systemctl restart rezeptionistin
</pre>
</pre>


Eventuelle fehler koennen mit  
Eventuelle fehler koennen mit  


  supervisorctl tail rezeptionistin  
  journalctl -xeu rezeptionistin  


betrachtet werden.
betrachtet werden.

Version vom 23. Oktober 2015, 14:09 Uhr

Rezeptionistin

Der freundliche IRC Bot für #k4cg

Quellcode auf Github: https://github.com/k4cg/Rezeptionistin

Features

  • !gt - PING - antwortet mit "Ich lebe noch, %nick"
  • !kt - Zeigt aktuelle Temperatur in der K4CG
  • !help - Zeigt Hilfe, antwort im Query
  • !help - Zeige Hilfe, antwort im Query
  • !beleidige <nick> - Jemanden beleidigen
  • !schmeichle <nick> - Jemandem ein Kompliment machen.
  • !private <link> - Einen Link teilen ohne dass er im Wiki gelistet wird. (alternativ: !pr, !nsfw)
  • !lineart - Eine kleine One-Line ASCII-Art anzeigen
  • URL Title - Fetcht den <title> von http(s)-Links und postet den Inhalt in den Channel #k4cg und in den MediaWiki
  • Fragen beantworten in Form: <soll/kann/darf/muss> ich * [<oder> *]
  • Einem Benutzer eine Nachricht ausrichten wenn er das naechste mal auftaucht.
  • Sich mit NickServ auf Freenode authentifizieren*

Deployment

Auf Host:nixe.k4cg.org wie folgt updaten:

cd /usr/local/rezeptionistin
git pull origin master
systemctl restart rezeptionistin

Eventuelle fehler koennen mit

journalctl -xeu rezeptionistin 

betrachtet werden.