Orakel - Hilfs- und Aufsichtsbot von #html.de
$ gpg -d Orakel.pl.gpg | perl <memowe> ?html dd -Orakel- definition description - http://www.w3.org/TR/html4/struc [...] <memowe> ?css border-collapse -Orakel- border-collapse - http://www.w3.org/TR/REC-CSS2/tables.ht [...] <memowe> ?valid www.focus.de <Orakel> www.focus.de ist ungültig. 1744 Fehler! <memowe> ?cregel 8 <Orakel> Regel 8: Du sollst nicht Away-Skripten nutzen. (http://ww [...] <memowe> ?lucky webauthoring frames <Orakel> Google-lucky: http://www.memowe.de/Frames-Dialektik/
Willkommen bei Orakel, dem Hilfs- und Aufsichtsbot des HTML-Hilfe-Kanals #html.de im IRC-Netzwerk Quakenet. Orakel ist ein emsiger und nimmermüder Helfer für alle Mitarbeiter und Kunden in #html.de. Er geht Angestellten bei administrativen Aufgaben und beim Helfen zur Hand und bietet auch für Kunden die vollständige HTML- und CSS-Link-Datenbank, so dass man schnell die Information findet, die man sucht.
Dabei ist Orakel bei weitem noch nicht fertig. Ständig wird nach neuen Features und Implementierungen gesucht, die das Zusammenleben und Helfen in #html.de besser machen. Bitte lesen Sie vor Benutzung von Orakel gründlich die Bedienungshinweise für sicheres und komfortables Arbeiten.
Diese Befehle lassen sich von allen Nutzern in #html.de ausführen. Dabei ist der Befehl ausschließlich direkt im Kanal anzugeben. Ausnahmen sind angegeben. Um den Verkehr des Bots gering zu halten, bitten wir, nur die Befehle auszuführen, die auch nötig sind.
?help
Liefert den Link zu diesem Web-Dokument.
?html ELEMENT
Schickt eine (ggf. sehr) kurze Beschreibung und einen Link in die HTML-4.01-Spezifikation des HTML-Elements ELEMENT per Benachrichtigung an den Kunden.
?css EIGENSCHAFT
Schickt eine (ggf. sehr) kurze Beschreibung und einen Link in die CSS-2-Spezifikation der CSS-Eigenschaft EIGENSCHAFT per Benachrichtigung an den Kunden.
?kontostand
Anforderung für den Kontostand des Kunden. Der Betrag auf dem Kundenkonto wird per Benachrichtigung geschickt.
Folgende Befehle können in einem Query mit Orakel und im Kanal selbst benutzt werden:
?regeln
Veranlasst Orakel, eine kurze Auflistung aller Regeln per Benachrichtung zu schicken. So kann man sich bequem vergewissern, welche Nummer zu welcher Regel gehört, bevor man jemanden auf eine Regel aufmerksam macht.
?k NICKNAME [ GRUND ]
Veranlasst Orakel, den Kunden mit dem Spitznamen NICKNAME aus #html.de zu treten. Da dies auch im Query benutzt werden kann, kann man auf diese Weise anonym Kunden treten und sich so voll in seiner Feigheit entfalten. Kanalpersonal kann nicht getreten werden. Der optionale Parameter ist für den Grund, aus dem der Tritt geschieht und wird beim Fehlen durch eine humorige Bemerkung ersetzt.
?bk NICKNAME [ GRUND ]
Veranlasst Orakel, den Kunden mit dem Spitznamen NICKNAME zu verbannen und anschließend aus dem Kanal zu treten. Der optionale Parameter GRUND ist für den Grund, aus dem der Tritt geschieht und wird beim Fehlen durch eine humorige Bemerkung ersetzt.
?tbk NICKNAME [ ZEIT [ GRUND ] ]
Veranlasst Orakel, den Kunden mit dem Spitznamen NICKNAME zu verbannen, anschließen aus dem Kanal zu treten und nach einer gewissen Zeit den Bann aufzuheben. Der optionale Parameter ZEIT gibt die Zeit des Bannes an und besteht aus maximal drei Dezimalziffern und einem kleinen 'm' (Minuten) oder einem kleinen 's' (Sekunden). Wenn der Parameter fehlt, wird eine Bannzeit von 15 Sekunden angenommen. Der optionale Parameter GRUND gibt den Grund an, aus dem der Tritt geschieht und wird beim Fehlen durch eine humorige Bemerkung ersetzt. GRUND kann nur angegeben werden, wenn auch ZEIT angegeben wurde.
Beispiele:
?tbk foo 3m Nein, Werbung ist immer noch nicht erlaubt ?tbk bar 142s ?tbk baz
Der erste Befehl erteilt dem Kunden mit dem Spitznamen 'foo' eine dreiminütige Auszeit und tritt ihn, weil Werbung immer noch nicht erlaubt sei. Der zweite Befehl erteilt dem Kunden mit dem Spitznamen 'bar' eine 142-sekündige Auszeit und tritt ihn mit einer humorigen Bemerkung. Der dritte Befehl weist Orakel an, den Kunden mit dem Spitznamen 'baz' für 15 Sekunden zu sperren und ihm mit einer humorigen Bemerkung die Tür zu zeigen.
?stats
Zeigt dem Angestellten die Anzahl aller Benutzer, davon anteilig der Superoperatoren, Angestellten und Schuldner.
?konten
Zeigt dem Angestellten die Kontostände aller Kunden von #html.de. Dabei werden nur Konten berücksichtigt, die nicht ausgeglichen sind.
?html ELEMENT NICKNAME
Schickt eine (ggf. sehr) kurze Beschreibung und einen Link in die HTML-4.01-Spezifikation zum HTML-Element ELEMENT per Benachrichtigung an den Kunden mit dem Spitznamen NICKNAME.
?chtml ELEMENT
Schickt eine (ggf. sehr) kurze Beschreibung und einen Link in die HTML-4.01-Spezifikation zum HTML-Element ELEMENT für alle sichtbar in den Kanal.
?css EIGENSCHAFT NICKNAME
Schickt eine (ggf. sehr) kurze Beschreibung und einen Link in die CSS-2-Spezifikation zur CSS-Eigenschaft EIGENSCHAFT per Benachrichtigung an den Kunden mit dem Spitznamen NICKNAME.
?ccss EIGENSCHAFT
Schickt eine (ggf. sehr) kurze Beschreibung und einen Link in die CSS-2-Spezifikation zur CSS-Eigenschaft EIGENSCHAFT für alle sichtbar in den Kanal.
?regel NUMMER NICKNAME
Schickt einen kurzen Regeltext zur Regel mit der Nummer NUMMER und einen Link zur #html.de-Regelsammlung per Benachrichtigung an den Kunden mit dem Spitznamen NICKNAME
?cregel NUMMER
Schickt einen kurzen Regeltext zur Regel mit der Nummer NUMMER und einen Link zur #html.de-Regelsammlung für alle sichtbar in den Kanal.
?valid PSEUDOURL
Prüft das Webdokument mit dem URL PSEUDOURL auf Gültigkeit und gibt das Ergebnis dieser Prüfung kurz für alle sichtbar an den Kanal. PSEUDOURL muss dabei mit "http://" oder "www." beginnen. Wenn der URL trotzdem nicht funktioniert, schreibt Orakel eine Fehlermeldung. Da dieser Befehl etwas aufwendiger ist als andere, wird empfohlen, ihn sparsam einzusetzen.
?google SUCHBEGRIFFE
Konstruiert auf simple Weise einen URL für eine Google-Suche nach den übergebenen SUCHBEGRIFFEn und zeigt diesen URL dem ganzen Kanal.
?lucky SUCHBEGRIFFE
Veranlasst eine Google-Suche nach den übergebenen SUCHBEGRIFFEn und zeigt das beste Ergebnis dem ganzen Kanal ("I'm feeling lucky"-Suche). Da dieser Befehl etwas aufwendiger ist als andere, wird empfohlen, ihn sparsam einzusetzen.
?mensa MENSA
Lässt das Orakel die Speisen für den heutigen Tag in der angegebenen Mensa ausgeben. Derzeit gibt es nur Mensen in Münster, und zwar: hueffer (Hüfferstift), mensa2 (Mensa am Ring) und aasee (Mensa 1).
?gcalc AUSDRUCK
Veranlasst eine Google-Auswertung dieses Ausdrucks. Damit kann man Einheiten ineinander überführen, Rechnungen ausführen oder Währungen umrechnen. Näheres bei Google
?berechne NICKNAME BETRAG
Es werden BETRAG Lewonzen vom Kundenkonto des Kunden mit dem Spitznamen NICKNAME abgebucht. BETRAG muss entweder 17 oder 42 sein. Andere Beträge sind steuerrechtlich nicht erlaubt. Im Schuldenfalle wird der Kunde hernach regelmäßig an seinen Kontostand erinnert. Kanalpersonal ist vom Kontoverfahren ausgeschlossen.
?gutschreiben NICKNAME BETRAG
Es werden BETRAG Lewonzen auf das Kundenkonto des Kunden mit dem Spitznamen NICKNAME gutgeschrieben. BETRAG muss entweder 17 oder 42 sein, dadurch zwingen wir unser Kanalpersonal, Linearkombinationen von 17 und 42 zu bilden um ein Konto auszugleichen. Das stärkt den analytischen Geist. Kanalpersonal ist vom Kontoverfahren ausgeschlossen.
Alle Regeln und Protokolle der Hauptversammlungen von #html.de finden Sie auf der Webpräsenz des Kanals #html.de.
Die erste Version von Orakel war ein einfaches Perl-Skript, das über die XChat-Schnittstelle mit #html.de kommunizierte. Es leistete nicht viel mehr, als alle HTML-Elemente als Links in die Spezifikation bereitzustellen. Weitere Features und die CSS-Eigenschaften wurden, auch mit der tollen Unterstützung einiger #html.de-Mitarbeiter, nach und nach eingebaut.
Da die XChat-Schnittstelle aber wie Net::IRC einigermaßen eingeschränkt ist, wurde Orakel nun (Anfang 2005) von Grund auf neu programmiert. Es ist jetzt ein eigenständiges Perl-Skript, das direkt über Sockets kommuniziert. Dank IO::Poll ist eine einfache Pseudo-Nebenläufigkeit mit Scheduler für zeitgesteuerte Aktionen möglich. Nach und nach werden weitere Features eingebaut.
Autor von Orakel war und ist Mirko "memowe" Westermeier. Dank gebührt Julius "Feh" Plenz, der sich um die erste CSS-Datensammlung und die erste ?valid-Implementation verdient gemacht hat, Martin "hounddog" Shwalbe [sic], der sich um einen Account auf einem stabilen Root-Server bemüht hat (und dem wir somit die guten Präsenzen von Orakel verdanken), sowie den zahlreichen freiwilligen Testern in #html.de, die Orakel auch in den Testphasen stunden-, tage-, wochenlang ertragen (haben).
In Sachen Stabilität bei Netsplits oder Kills habe ich noch wenig Erfahrungen gemacht. Wenn irgendetwas auffällt, was abnormal aussieht und/oder nicht dem in diesem Dokument spezifizierten Verhalten entspricht, so bitte ich um ausführliche Mitteilung.