Aufgrund von extrem gründlichen Vandalismus musste die Wiki leider für Gäste schreibgeschützt werden :(


Aufbau der modules.xml

In der Datei modules.xml im Stammordner von bottr wird festgelegt, welche Module wann geladen werden. Am Beispiel des PING-Moduls kann man schön zeigen, wie diese aufgebaut ist.

modules.xml
<?xml version='1.0' encoding='UTF-8' ?>
<bottrconf>
	<module event='message'>
		<name>PING-Modul</name>
		<regex>/^ping$/i</regex>
		<php>
			<function>ping</function>
		</php>
                <adminonly>false</adminonly>
	</module>
</bottrconf>
  • <module event='message'> Definiert, dass ein Modul-Block beginnt. Das Attribut „event“ regelt in diesem Fall, dass das Modul nur bei einem Event des Typs message aufgerufen wird. Eine Liste der Events gibt es hier.
  • <name>PING-Modul</name> Gibt den Namen des Moduls an. Dieser wird derzeit noch nirgendwo verwendet, aber vielleicht irgendwann, zum Beispiel wenn eine automatische Hilfe generiert wird.
  • <regex>/^ping$/i</regex> [optional] Gibt einen Regulären Ausdruck, wie PHPs preg_match ihn erwartet, an. Ist diese Eigenschaft gesetzt, wird das Modul nur aufgerufen, wenn der „wichtigste“ Parameter auf diesen RegEx passt.
  • <php><function>ping</function></php> Sagt PHP, wo er die Funktion findet, in diesem Falle class/modules/ping.php
  • <adminonly>false</adminonly> [optional] Gibt an (true oder false), ob diese Funktion nur für Admins verfügbar ist. Zum Überprüfen von Rechten wird isAdmin verwendet. Du kannst natürlich auch false setzen und dann mit dem Modul selber $bottr→isAdmin($jid) aufrufen, wenn du eine spezielle Ausgabe machen willst, wenn die Adminüberprüfung fehlgeschlagen ist.

Eigene Werkzeuge