Anmerkung:
Dieser IRC Eggdrop Workshop wurde von einem GastAutor erstellt, weiteres
unten.
Er wurde unzensiert und unbehandelt auf IRC-Mania.de
aufgenommen !
Sollte ein hier präsentierter WorkShop extrem viele Fehler
aufweisen, bitte ich um eine Benachrichtigung WorkShopKritik@IRC-Mania.de
Wir übernehmen keine Verantwortung für Schäden,
die durch diesen Workshop entstanden sind !
Autor: by Thomas "tom" S.
URL: http://www.eggdrop.ch
Email: <tom at eggdrop.ch>
Version 1.1
Inhalt
1 Eggdrop
1.1 Was ist Eggdrop?
Eggdrop ist ein englischer Name und heisst wörtlich übersetzt
Eierverlierer. Das hat aber nix mit Eiern zu tun ;-) Eggdrop ist
ein sogenannter Bot. Ein Bot ist nichts anderes als ein Roboter.
Es gibt verschiedene Arten von Bots. Der Eggdrop ist ein Chatbot.
Er verbindet sich mit einem IRC-Server und sieht im Chat gleich
aus wie ein ganz normaler Chatter. Auf Netzwerken, die keine Services
(NickServ, ChanServ usw.) haben, werden Bots hauptsächlich
gebraucht, um die Channels vor Angreifern zu schützen. Bots
können aber auch eine Channelstatistik erstellen, oder auf
Befehle der Users reagieren.
ACHTUNG: Auf einigen Servern sind Bots verboten. Wenn man
dort aber trotzdem einen Bot setzt, kann man vom Chat gebannt werden.
DIE BENUTZUNG DES BOTS ERFOLGT AUF EIGENES RISIKO!
1.2 Warum Eggdrop?
Eggdrop hat sehr viele Vorteile gegenüber anderer Bots. Hier
hab ich ein paar aufgezählt:
-
Eggdrop ist einer von den besten und häufigsten Bots.
-
Eggdrop hat Warteschlangen, welche in regelmässigen Abständen
von 2 Sekunden die Befehle zum Server senden. So wird ein Excess-Flood
verhindert.
-
Wenn mehrere Modes in einer Warteschlange warten, dann werden
sie, wenn möglich, zusammen verbunden, zum Beispiel:
Normaler Bot:
*** bot sets mode: -o Angreifer
*** bot sets mode: +o Oper
Eggdrop:
*** eggdrop sets mode: -o+o Angreifer Oper
-
Eggdrop hat eine sehr gute Benutzerliste, von der er ausserdem
eine Sicherheitskopie erstellt.
-
Man kann mehrere Eggdrops zusammen verbinden ("linken"). Die
Benutzerliste wird dann auch auf die anderen Eggdrops übertragen.
So kann man in einem Bot eine Änderung vornehmen und sie
wird zu allen anderen Bots gesendet.
-
Eggdrop hat eine sogenannte Party-Line. Man verbindet sich
dabei per DCC oder Telnet auf den Eggdrop. Die Party-Line ähnelt
einem kleinem Chat, wobei man über den Bot chattet. Wenn
mehrere Bots verbunden sind, wird auch die Party-Line zusammen
verbunden. So kann man ganz einfach mit anderen Besitzern von
Bots chatten. In der Party-Line werden übrigens fast alle
Eggdrop-Befehle eingegeben.
-
Man kann den Eggdrop fast unendlich erweitern, da man sogenannte
Scripts in der Sprache TCL schreiben kann, die zum Beispiel
Channelstatistiken erstellen oder auf Befehle der Benutzer reagieren
und vieles mehr!
1.3 Brauche ich wirklich einen Eggdrop?
Eggdrop ist ein sehr guter Bot, allerdings sollte man sich überlegen,
ob man "reif" genug ist für diesen Bot, vor allem wenn man
Windows benutzt. Denn der Bot wurde ursprünglich für Unix-Systeme
entwickelt und Unix-Programme stellen im Allgemeinen sehr hohe Ansprüche
an den Benutzer. So auch Eggdrop. Ich werde keine ausführlichere
Anleitung bei E-Mails, wo nur steht "Hilfe es geht nicht", geben.
Wer das nicht versteht, was hier steht ist einfach zu dumm für
Eggdrop und soll sich lieber einen mIRC-Bot nehmen, statt mit einem
Eggdrop eine schlaflose Konfigurationsnacht haben.
2 Download
2.1 Wichtiger Hinweis zum Downloaden
Ich übernehme keine Verantwortung über Schäden,
die durch den Gebrauch dieser Programme entstanden sind.
2.2 Download Linux/Unix
Der neuste Eggdrop kann unter http://www.eggheads.org/downloads/
heruntergeladen werden.
2.3 Download Windows
Der Eggdrop für Windows ("Windrop") kann unter https://sourceforge.net/project/showfiles.php?group_id=7174
heruntergeladen werden. Die -handlen32-Versionen sind gleich
wie die normalen Versionen, nur bei diesen beträgt die maximale
Länge eines Handles 32, anstelle von 9. Einfacher gesagt: Wenn
dein IRC-Server Nicks erlaubt, die länger als 9 Zeichen sind,
dann solltest du die -handlen32-Version Version nehmen.
3 Installation und Konfiguration
3.1 Installation Linux/Unix
Unter Unix/Linux musst du den Eggdrop zuerst noch folgendermassen
kompilieren, wobei * durch den genauen Namen des Eggdrops zu ersetzen
ist.:
tar xzvf eggdrop*.tar.gz oder tar xjvf eggdrop*.tar.bz2
cd eggdrop*
./configure
make config
make
make install
Wenn beim kompilieren Fehler auftreten, dann sende mir ein E-Mail
mit dem genauen Fehler. Wenn steht, dass TCL nicht gefunden wurde,
dann installiere zuerst TCL.
3.2 Installation Windows
Wenn du Windows hast, entpackst du den Eggdrop in ein Verzeichnis
(am Besten C:\Windrop oder so). Danach editierst du die Datei resolv.conf,
die sich im Windrop-Verzeichnis befindet und änderst 192.168.0.1
in die IP von deinem ersten Nameserver. Wenn du nicht weisst, wie
dein Nameserver heisst, dann lies die Anweisungen unten.
Bei Windows 95/98/ME: Geh auf Start -> Ausführen
und tippe winipcfg ein. Klicke dann auf Mehr Info und benutze die
IP, die unter DNS-Server aufgeführt ist.
Bei Windows NT/2000/XP: Geh auf Start -> Ausführen
und tippe command ein. Im schwarzen Fenster, welches erscheint,
tippst du ipconfig /all ein und benutze die IP, die bei DNS-Server
aufgeführt ist.
Bei einem Providerwechsel musst du eventuell den Nameserver wieder
neu in die resolv.conf eintragen.
3.3 Konfiguration
Ich hab hier mal eine kleine Konfigurationsanleitung geschrieben.
Die alte Version kann hier
gelesen werden. Die alte Seite ist aber veraltet und es können
mehr Fehler passieren.
Also, öffne jetzt die eggdrop.simple.conf und konfiguriere
sie folgendermassen (die Zeilen, die ich hier nicht beschrieben
habe, lässt du so wie sie sind). Wenn du keine eggdrop.simple.conf
im Verzeichnis findest (sondern z.B. nur eine eggdrop.conf), dann
kannst du die Config hier
herunterladen.
set nick "Lamestbot": Lamestbot ist der Nickname
des Bots
set altnick "Llamab?t": Das ist der Alternativ-Nickname
(falls der Nickname schon besetzt ist) des Bots. Dabei wird jedes
? durch eine beliebige Zahl von 0 bis 9 ersetzt.
set realname "/msg LamestBot hello": Der Name,
der im /whois angezeigt wird.
set servers {
you.need.to.change.this:6667
}
you.need.to.chante.this:6667 wird durch eine Serverliste ersetzt,
also z.B:
set servers {
irc.datacomm.ch
irc.freenet.de
}
Die nächsten Zeilen, die mit channel anfangen, fügen einen
statischen Channel hinzu. Du kannst sie löschen, denn du kannst
die Channels auch nachträglich hinzufügen. Wenn du trotzdem
statische Channels machen willst, dann nimm am besten die eggdrop.advanced.conf
(oder wenn keine dabei ist die eggdrop.conf) und lies die alte Version
dieses Textes oder die englischen Kommentare im Configfile.
listen 3333 all: Diese Zeile definiert den Telnet-Port, den
der Eggdrop benutzt.
#set owner "MrLame, MrsLame": bei dieser Zeile
musst du das # am Anfang wegnehmen und MrLame, MrsLame durch den
Nicknamen von dir und den anderen Besitern des Bots ersetzen.
logfile jpk #lamest "logs/lamest.log": hier kannst
du die Logfiles für deine Channels bestimmen.
die "you didn't edit your config file! that's a NO NO":
Zeilen, die mit die anfangen, definieren das Beenden des Bots. Du
musst diese Zeile entfernen, damit der Bot startet.
So, jetzt wärst du eigentlich schon fertig mit der Konfiguration.
4 Start
4.1 Start Linux/Unix
Wir wechseln in das Verzeichnis, in dem sich der Bot befindet (z.B.
cd /home/tom/eggdrop) und geben dann ./eggdrop -m eggdrop.simple.conf
ein.
4.2 Start Windows
Man klickt auf Start->Ausführen und tippt dort "command"
in. Dann meldet sich die Eingabeaufforderung. Wenn sich der Eggdrop
in C:\Windrop befindet, tippt man das ein:
cd C:\Windrop
eggdrop -m eggdrop.simple.conf
4.3 Prüfen, ob der Bot läuft
Wenn folgendes kommt: [18:32] botnick: 0 channels, 0 users.,
dann müsste der Bot laufen. Beim nächsten Start musst
du die -m-Option weglassen. Wenn etwas anderes steht, oder
wenn nach diesen Zeilen eine Fehlermeldung kommt, dann läuft
er nicht. Das kann verschiedene Gründe haben.
Wenn der Bot nicht läuft, dann hat es einen Fehler im Config-File.
Wenn eine Zeilennummer steht, dann schaust du in der angegebenen
Zeile ob es einen Fehler hat (zum Beispiel fehlt ein Anführungszeichen).
Wenn du keinen Fehler siehst, oder nicht sicher bist, dann kommentierst
du die Angegebene Zeile mit einem "#" am Anfang der Zeile
aus und versuchst es noch einmal (geht natürlich nur bei nicht-lebensnotwendigen
Zeilen). Wenn du wirklich nicht mehr weisst was machen, dann mach
das Config-File neu und fülle nur die wichtigsten Sachen aus.
Oder du schickst mir eine E-Mail mit der GENAUEN Fehlermeldung
UND dem config-file. Schreibe mir genau ab (Kopieren und
Einfügen) was kommt, was du eingetippt hast und welche Eggdrop-Version
du benutzt (wer von der DOS-Box nicht kopieren kann, soll halt einen
Screenshot machen oder sich sonst etwas einfallen lassen).
4.4 Bot unter Windows per Mausklick starten
Um, den Bot unter Windows per Mausklick starten, gibt es zwei Möglichkeiten:
1. Verknüpfung: Erstelle eine Verknüpfung indem
du im Explorer die Datei eggdrop.exe mit der rechten Maustaste anklickst
und Verknüpfung erstellen auswählst. Verschiebe sie nachher
am besten auf den Desktop. Klicke die eben erzeugte Verknüpfung
mit der rechten Maustaste an und wähle Eigenschaften. Wechsle
dann zu der Registerkarte Verknüpfung. Bei Ziel sollte der
Pfad zur eggdrop.exe schon stehen. Füge aber noch den Namen
der Config-Datei hinzu und überprüfe, ob bei Arbeitsverzeichnis
der Pfad zum Eggdrop steht, so wie auf der Abbildung:
2. Batch-Datei: Erstelle eine *.bat Datei, z.B. eggstart.bat.
Die Datei hat folgenden Inhalt, falls sich eggdrop in C:\Windrop
befindet:
cd C:\Windrop
eggdrop eggdrop.simple.conf
Wenn man die Datei oder die Verknüpfung im Autostart-Ordner
ablegt (er befindet sich im Start-Menü), dann startet der Eggdrop
bei jedem Start von Windows.
4.5 Hello sagen und Passwort setzen
Wenn der Bot im IRC ist, machst du: /msg botnick hello.
Er sollte dir dann antworten, dass du ein Passwort setzen musst.
Dann musst du ein mindestens 6 Zeichen langes Passwort setzen mit:
/msg botnick pass Passwort. Bei Problemen
liest du den nächsten Abschnitt.
Wenn der Bot dir nicht antwortet oder gar nicht im IRC ist, versuch
eine Telnet-Verbindung nach localhost aufzubauen (oder zu der IP-Adresse
des Bots). Hilfe zum Aufbauen einer Telnet-Verbindung findest du
in meinem Text über Internetprotokolle. Der Port ist der, welchen
du beim Konfigurieren angegeben habt. Standardmässig heisst
er 3333. Der Bot sollte dich dann nach dem Login fragen. Du tippst
new ein. Erst dann wird er dich nach deinem Nick und dem
Passwort fragen. Du bist jetzt schon eingelogt in der Party-Line.
Was das ist werde ich unten genau beschreiben. Wenn der Bot aber
meldet, das new ein fehlerhafter Login ist, dann kill den Bot (CTRL+ALT+DEL
drücken, Eggdrop auswählen und Task Beenden drücken
oder bei Linux killall -9 <pid> bzw. killall eggdrop),
lösch die auf .user endende Datei, die sich im Eggdrop-Verzeichnis
befindet, starte den Bot erneut und wiederhole das mit dem Telnet
noch mal. Wenns trotzdem nicht geht, schreib mir eine E-Mail (wie
immer mit Config-File und allen Informationen!).
5 Bedienung
5.1 Party-Line, Handles und Flags
Wenn du nicht schon in der Party-Line bist, dann tipp folgendes
im Chat-Clienten ein:
/dcc chat botnick oder /chat botnick
Wenns nicht geht, lies den Abschnitt weiter oben durch, gib aber
als Login deinen Nick an und als Passwort das Passwort, das du vorhin
gesetzt hast. Was ist jetzt überhaupt diese Party-Line? Nun,
dort werden die meisten Eggdrop-Befehle eingegeben. Du kannst dort
aber auch chatten mit den Leuten, die über die entsprechenden
Rechte (Flags) verügen, um sich mit der Party-Line zu verbinden.
Wie funktioniert die Benutzerliste des Eggdrops? In der Benutzerliste
wird ein Benutzer Handle genannt. Ein Handle kann die Hosts des
Benutzers und Flags (Rechte) aufnehmen. Es gibt lokale Flags und
globale Flags. Lokale Flags sind nur für einen bestimmten Channel
gültig und globale Flags sind für alle Channels gültig.
Hier ein Beispiel eines Handles:
Handle: tom
Hosts: tom*!tom@*.provider.ch, tom!*@admin.eggdrop.ch
Flags (global): o
Flags #botcentral (lokal): afmo
Flags #intern (lokal): k
Ich hoffe, du weisst, wie ein Host aufgebaut ist und was das Zeichen
* im Host bedeutet. Was bedeuten jetzt aber die Buchstaben o, afmo
und k? Das sind eben diese Flags; hier ist eine Liste der Flags:
Flag
|
Beschreibung
|
Beispiel
|
+a
|
+a zusammen mit +o gibt Auto-Op. Der User wird automatisch
geopt wenn er einen Channel betretet.
Achtung: Grosse Sicherheitslücke: Wenn
der User eine dynamische IP hat und z.B. als *!*loli@*.freesurf.ch
in den Bot eingetragen ist, dann kann ein anderer User von
*.freesurf.ch auch Op bekommen, wenn er die IdentD wechselt
(und kann danach den Channel übernehmen)
|
tester hat +ao
*** tester has joined #chan
*** botnick sets mode: +o tester
|
+b
(nur Global)
|
+b kennzeichnet einen anderen Bot aus dem Botnet.
|
|
+d
|
+d steht fü Deop. Damit wird ein User immer gedeopt
wenn er geopt wird, ausser er wird von einem Master (+m) geoppt.
|
tester hat +fo und WillOp +d
*** tester sets mode: +o WillOp
*** botnick sets mode: -o WillOp
|
+f
|
+f steht für Freund. Er wird vom Bot vor Kicks, Deops,
Banns usw. geschützt. Ausserdem darf er den Bot deopen,
ohne das der Bot nachher wütend auf ihn wird und ein
+d einstellt ;-).
|
z.B.: tester hat +fo und dummkopf +o
*** dummkopf sets mode +b *!*tester@*
*** botnick sets mode: -b *!*tester@*
|
+g
|
+g zusammen mit +v gibt Auto-Voice. Der User wird automatisch
gevoicet, wenn er in einen Channel betretet.
|
tester hat +gv
*** tester has joined #chan
*** botnick sets mode: +v tester
|
+h
|
Ein Bot zeigt so einem User die Hilfetexte auch fett und
unterstrichen.
|
|
+j
(nur Global)
|
Er hat die komplette Kontrolle über dem Dateisystem.
|
|
+k
|
Wenn ein User mit diesem Flag auf einen Channel reinkommt,
wird er sofort gebannt!
|
angreifer hat +k
*** angreifer has joined #chan
*** botnick sets mode: +b angreifer
*** angreifer was kicked by botnick (...and don't come back!)
|
+m
|
Er kann alles auf den Channels machen.
|
|
+n
|
Er kann ALLES mit dem Bot machen (ausser den permamenten
Besitzer des Bots löschen).
|
|
+o
|
Dieser User kann Oprecht verlangen mit
/msg <botnick> op <passwort> [channel]
Wenn kein Channel angegeben wird opt dich der Bot auf allen
Channels.
|
tester hat +o
*** tester has joined #chan
-> *botnick* op mein_passwort #chan
*** botnick sets mode: +o tester
|
+p
(nur Global)
|
Er kann in die Party-Line des Bots gehen.
|
tester hat +p
Chat with botnick
Waiting for acknowledgement...
DCC Chat connection established
<botnick> Gib dein Passwort ein.
|
+q
|
Der User darf kein Voice haben.
|
WillVoice hat +q, tester hat +o
*** tester sets mode: +v WillVoice
*** botnick sets mode: -v WillVoice
|
+t
(nur Global)
|
Master vom Botnet. Mehr dazu bei Eggdrops linken
|
|
+u
(nur Global)
|
Wird auch bei Eggdrops Linken erklärt
|
|
+v
|
Dieser User kann ein Voice verlangen mit
/msg <botnick> voice <passwort> [channel]
Wenn kein Channel angegeben wird voicet dich der Bot auf allen
Channels.
|
tester hat +v
*** tester has joined #chan
-> *botnick* voice mein_passwort #chan
*** botnick sets mode: +v tester
|
+x
(nur Global)
|
Ein User mit diesem Flag kann über den Bot Dateien senden
und empfangen.
|
|
Dann gibt es noch Bot-Flags. Aber ich werde die erst bei Eggdrops
linken beschreiben. Natürlich musst du nicht alle Flags auswendig
können. Ich weiss auch nicht alle auswendig. Wichtig sind einfach
die Flags +d, +o, +f, +m und +n. Man braucht sie sehr häufig.
Mit der Zeit wird man sie sich merken. Und nicht jedem User das
+n-Flag geben. Wers macht wird kann alle seine Channels, Eggdrops
und unter Umständen (z.B. falsch konfigurierter Eggdrop oder
ein Exploit) sogar den Computer, auf dem der Eggdrop läuft
(!!!), verlieren. Ich übernehme hier (wie immer) keine Verantwortung.
So, genug Theorie. Damit du mit diesen Flags auch etwas anfangen
kannst, werde ich hier die Befehle des Eggdrops beschreiben. Man
tippt sie alle in der Party-Line ein.
Hier noch eine kurze Erklärung, wie der Befehle aufgebaut ist:
.Befehl <das_muss_man_angeben> [das_kann_man_eingeben]
Achtung: Jeder Befehl fängt mit einem Punkt
(.) an, also BITTE keine E-Mails, dass die Befehle
nicht gehen!
Befehl
|
Beschreibung
|
Beispiel
|
.help [befehl]
|
Zeigt die Hilfe an oder die Hilfe zum Befehl. Mein Tip: schaut
euch mal alle Befehle mit .help all an.
|
.help chattr
Zeigt die Hilfe zum Befehl chattr an.
|
.+chan <#chan>
|
Fügt einen neuen dynamischen Channel ein.
Ein dynamischer Channel ist so einer, welcher nicht im Config-File
angegeben wurde.
|
.+chan #tisch
Fügt den Channel #tisch hinzu.
|
.-chan <#chan>
|
Entfernt einen dynamischen Channel.
Achtung: Dieser Befehl entfernt auch alle
lokalen Flags für diesen Channel von den Users.
|
.-chan #windows
Entfernt den Channel #windows.
|
.jump [server [port]]
|
Geht auf einen anderen Server. Wenn kein Server angegeben
ist, nimmt er einfach den nächsten Server in der Serverliste.
|
.jump irc.stealth.net 6668
Springt auf Port 6668 des Servers irc.stealth.net
|
.status
|
Zeigt alle wichtigen Informationen über den Bot an.
|
Selber mal ausprobieren
|
.rehash
|
Nach einer kleinen Änderung im Config-File muss man
das dem Bot mit diesem Befehl mitteilen.
|
-
|
.restart
|
Der Bot startet neu. Er verbindet sich dann auch neu mit
dem IRC-Server. Ist bei grösseren Änderungen in
TCL-Scripts notwendig.
|
-
|
.die [reason]
|
Beendet den Bot. Man muss ihn dann wieder über eggdrop
botconf starten.
|
.die bin gleich wieder da
So sieht das dann etwa auf dem Channel aus:
*** botnick Quit (bin gleich wieder da)
|
.adduser <nickname> [handle]
|
Wenn kein Handle angegeben wird, macht adduser einen neuen
Handle (wenn er noch nicht existiert) und fügt den Host
von nickname (in der Form *!host@*.domain) zu diesem neuen
Handle hinzu. Falls handle angegeben ist, fügt der Befehl
einfach den Host von nickname zum handle hinzu.
|
.adduser tester
|
.+user <handle> [host]
|
Erstellt einen neuen Handle und fügt dem (wenn angegeben)
einen neuen Host hinzu.
|
.+user tom *tom*!*tom@*.hispeed.ch
Fügt ein Handle namens tom hinzu mit dem Host *tom*!*tom@*.hispeed.ch.
|
.-user <handle>
|
Entfernt einen Handle.
|
.-user Gregory
Entfernt den User Gregory vom Bot.
|
.+host <handle> <hostmask>
|
Fügt einem Handle einen Host hinzu.
|
.+host Jochen *!*jochen@*.ipt.aol.com
Fügt Jochen den Host *!*jochen@*.ipt.aol.com hinzu.
|
.-host <handle> <hostmask>
|
Entfernt einem Handle einen Host.
|
.-host TheGame *!*dede@*.tiscalinet.ch
Entfernt den Host *!*dede@*.tiscalinet.ch von TheGame.
|
.whois <handle>
|
Listet die Flags und Hosts von handle auf.
|
.whois tester
Listet die Hosts und Flags von tester auf.
|
.chattr <handle> [changes] [channel]
|
Ändert die Flags eines Handles.
|
.chattr SuperLame +fmo #switzerland
Gibt dem Handle SuperLame die lokalen Flags +fmo auf
dem Channel #switzerland
.chattr krusty +o
Gibt dem User krusty das globale Flag +o
|
.chpass <handle> [passwort]
|
Verändert das Passwort von Handle. Wenn kein Passwort
eingegeben wird, dann wird das Passwort entfernt.
|
.chpass tester 3718419
|
.chhandle/.chnick <altes_handle> <neues_handle>
|
Verändert den Handle.
|
.chhandle tom_ tom
Ändert den Handle tom_ in tom
|
5.2 Bans, Exempts und Invites
Jetzt kommen die Bans, Exempts und Invites.
Für den Anfang sag ich dir zuerst was das überhaupt ist:
+b - Ban - Mit dem Ban kann man Chatter bannen damit sie nicht mehr
reinkommen. Wenn man auf dem IRC zB.: /mode #channel +b *!*asdf@*.freesurf.ch
macht und dann jemanden kickt welcher zu diesem Host passt, dann
kann er nicht mehr rein :)
+e - Exempt - Ein Exempt ist eine Ausnahme von einem Ban. Also wenn
man zB. *!*@*.ch bant und eine Ausnahme auf *!*@*.tiscalinet.ch
setzt, dann können alle Users von *!*@*.tiscalinet.ch reinkommen,
aber die anderen User aus *!*@*.ch nicht. Exempts existieren nicht
auf allen Servern.
+I - Invite - Das sind Einladungen für bestimmte Hosts, für
Channels welche +i sind (verwechsle +i, kleines i, mit +I, grosses
i, nicht!). Wenn man also eine Einladung auf *!*@*.ch setzt und
auf dem Channel +i einstellt, dann können nur Users aus *!*@*.ch
reinkommen. Invites existieren nicht auf allen Servern.
Hier siehst du eine Liste von den Befehlen mit dem Umgang mit Bans:
Befehl
|
Beschreibung
|
Beispiel
|
.bans all
|
Zeigt alle Banns an.
|
|
.bans <#chan>
|
Zeigt alle Banns von einem bestimmten Channel an.
|
|
.+ban <hostmask> [channel] [%bantime<XdXhXm>]
[reason]
|
Fügt einen Bann hinzu.
|
.+ban *!*@*.pl
Fügt einen Bann auf allen Channels hinzu mit der Hostmask
*!*@*.pl
.+ban *test*!*@*.ch #ch-opers Raus!
Fügt einen Bann auf #ch-opers hinzu mit der Hostmask
*test*!*@*.ch und dem Reason "Raus!"
.+ban *!*elpison@*.cyberhome.ch #schweiz %1d2h3m lamer
Fügt einen 1 Tag, 2 Stunden und 3 Minuten dauernden Bann
auf #schweiz hinzu mit der Hostmask *!*elpison@*.cyberhome.ch
und dem Reason "lamer"
|
.-ban <hostmask|bannummer> [channel]
|
Entfernt einen Bann.
|
.-ban *!*@*.pl
Entfernt den globalen Bann *!*@*.pl auf allen Channels.
.-ban *!*elpison@*.cyberhome.ch #lol
Entfernt den Bann *!*elpison@*.cyberhome.ch auf #lol
.-ban 1
Entfernt den Bann welcher mit "1" unter .bans all gekenzeichnet
ist.
.-ban 1 #test
Entfernt den Bann auf #test welcher mit "1" unter .bans #test
gekenzeichnet ist.
|
Die angegebenen Befehle kann man auch mit Exempts und Invites benutzen.
Sie heissen dann .exempts, .+exempt und .-exempt bzw. .invites,
.+invite und .-invite.
5.3 Sonstige Befehle
Jetzt zeig ich dir noch kurz eine Liste anderer nützlicher
Befehle.
Befehl
|
Beschreibung
|
Beispiel
|
.msg <#chan> <text>
|
Sendet etwas zum Channel.
|
In der Party-Line:
.msg #pop hallo :)
Auf #pop:
<botnick> hallo :)
|
.act <#chan> <action>
|
Sendet eine Action zum Channel (wie /me).
|
In der Party-Line:
.act #switzerland sagt hallo
Auf #switzerland:
* botnick sagt hallo
|
.op/.deop/.voice/.devoice <#chan> <nick>
|
Opt/Deopt/Voict/Devoict jemanden auf dem angegebenen Channel.
|
zB.:
In der Party-Line:
.op #ch-opers tester
Auf #ch-opers:
*** botnick sets mode: +o tester
|
.topic <#chan> [topic]
|
Ändert den Topic eines Channels. Wenn kein Topic angegeben
wird, dann wird der aktuelle Topic angezeigt.
|
In der Party-Line:
.topic #unix.ch Willkommen auf #unix.ch!
Auf #unix.ch:
*** botnick changes topic to: 'Willkommen auf #unix.ch!'
|
.kick <#chan> <nick> [reason]
|
Kickt jemandem vom Channel mit einem eventuellen Reason.
|
In der Party-Line:
.kick #cafe TheGame lamer
Auf #cafe:
*** TheGame was kicked by botnick (lamer)
|
.kickban <#chan> <nick> [reason]
|
Bannt und kickt jemandem vom Channel mit einem eventuellen
Reason.
|
In der Party-Line:
.kickban #lol Dummkopf hahaha
Auf dem Channel:
*** botnick sets mode +b *!*dummkopf@*.dumm.ch
*** Dummkopf was kicked by botnick (hahaha)
|
.invite <nick> <#chan>
|
Invited jemanden in einen Channel.
|
|
.channel <#chan>
|
Zeigt die Informationen zum Channel an. Unbedingt mal ausprobieren
:-)
|
|
6 Linken von Bots
6.1 Was ist Linken?
Linken heisst nichts anderes als verbinden. Wenn man also zwei oder
mehrere Bots hat, dann sollte man sie linken. Das Linken hat folgende
Vorteile:
-
Wenn man die Bots mit Userlist-Austausch linkt, wird die Userliste
in allen Bots gleich bleiben. Wenn man also zum Beispiel in
Bot1 .chattr tester +d eintippt, wird das in alle anderen Bots
übertragen.
-
Man kann Botnet-Scripts ausführen mit welchen sich zum
Beispiel die Bots OHNE ein +a Flag automatisch oppen über
das Botnet. Diese Methode ist viel sicherer als +a.
-
Wenn man etwas in der Party-Line sagt, dann wird das auch in
allen anderen gelinkten Bots angezeigt. So kann man sich zu
einem Fremden Botnet linken und kann über die Party-Line
mit den anderen Bot-Besitzern chatten.
6.2 Linken der Bots ohne Userlist-Austausch
Man kann ganz einfach und ohne Probleme Bots ohne Userlist-Austausch
linken. Ich nehme als Botnamen bot1 und bot2, wobei bot1 der Hauptbot
ist. Dabei wird sich bot2 zu bot1 verbinden und nicht umgekehrt
(man macht das immer so). Bot1 sollte die stabilste Leitung haben.
Und so gehts:
In bot1:
.+bot bot2 host.vom.bot2.de:3333 *!*bot2@host.vom.bot2.de
In bot2:
.+bot bot1 host.vom.bot1.de:3333 *!*bot1@host.vom.bot1.de
Wenn man die beiden Befehle eingibt, sind die Bots schon bereit
zum Linken.
Hier noch eine genaue Beschreibung des Befehls .+bot:
.+bot <Handle> [StatischerHost:[TelnetPort]] [Hostmask]
Handle: Das Handle des Bots in der Userlist (bekommt
automatisch das +b Flag)
StatischerHost: Das MUSS ein statischer Host
sein. Der Bot wird sich dann zu diesem Host verbinden. Wenn der
Bot eine dynamische IP hat dann musst du einen statischen Account
einrichten, welcher auf die IP des Bots verweist. Man ändert
dann bei jedem IP-Wechsel die IP in der Datenbank und die Bots können
sich linken. Es gibt diesen Service übrigens gratis bei http://www.dyndns.org/
TelnetPort: Das ist der Port, welchen man unter
listen xxxx all beim zu linkenden Bot eingestellt ist. Wenn keiner
angegeben wird, dann wird 3333 verwendet.
ACHTUNG: Wenn ein
Bot z.B. in einem LAN ist, kann von ihm aus keine Verbindung hergestellt
werden (aber umgekehrt). Wenn beide Bots in verschiedenen LANs sind,
kann kein Botlink gemacht werden.
Hostmask: Diese Hostmask darf dynamisch sein. Es
ist eine normale Hostmask des Bots im IRC.
Es wäre nicht schlecht wenn beide Bots auch die Flags +fo hätten.
Stelle das noch mit .chattr ein (wenn du nicht weisst wie das geht,
dann schäm dich und lies Eggdrop bedienen nochmal durch!).
Die Bots sind aber noch nicht gelinkt. Man muss noch in bot2 den
Befehl .link bot1 eingeben. Erst dann verbindet sich bot2 zu bot1.
Bei Problemen versuchs mal umgekehrt (bei bot1: .link bot2). Anhand
der Meldung erkennst du ob sie richtig gelinkt wurden. Wenns nicht
geht, dann hast du wahrscheinlich etwas falsches eingetippt, oder
beide Bots sind im LAN. Wenn du nicht mehr weiterkommst, schick
mir eine E-Mail. Willst du das sich die Bots automatisch linken?
Dann tippe in bot2 noch ein:
.botattr bot1 +h
6.3 Linken der Bots mit Userlist-Austausch
Lies zuerst den ganzen Abschnitt Linken der Bots ohne Userlist-Austausch
durch und füge die Bots mit .+bot hinzu. Linke sie aber noch
nicht mit .link und setze auch noch nicht das +h Flag! Du musst
jetzt die Botflags richtig einstellen. bot1 wird der Hub-Bot sein
(Hauptbot) und speichert die Userliste. Folgendes musst du eintippen.
In bot1:
.botattr bot2 +gs
In bot2:
.botattr bot1 +ghp
Erst jetzt kannst du sie mit .link linken. Wenns nicht geht, dann
schreib mir ein Mail.
Was die Bot-Flags bedeuten erklär ich dir in dieser Tabelle.
+a
|
Dies ist ein Alternativ-Hub. Wenn alle +h Bots down sind,
dann linkt er sich zum +a Bot.
|
+g
|
Die Userlist wird mit diesem Bot ausgetauscht.
|
+h
|
Das ist der Hub des Bots. Der Bot linkt sich automatisch
mit dem Hub. Es kann auch mehrere geben. Der Bot linkt sich
dann aber trotzdem nur zu einem.
|
+i
|
Wenn eine Verbindung mit diesem Bot hergestellt wurde, dann
wird alles was die Party-Line-Chatter schreiben NICHT übertragen.
|
+l
|
Der Bot darf sich mit diesem Bot nicht linken.
|
+p
|
Die Userlist wird von diesem Bot empfangen.
|
+r
|
Keiner der Bots aus dem Botnet darf sich mit diesem Bot linken.
|
+s
|
Die Userlist wird zu diesem Bot gesendet.
|
Ich muss wohl nicht mehr erklären das man die Botflags mit
.botattr setzt. Es gibt noch das globale User-Flag +u. Dieser Benutzer
wird NICHT zu den anderen Bots bertragen.
6.4 Sonstige Befehle
Hier noch einige nützliche Befehle:
Befehl
|
Beschreibung
|
Beispiel
|
.botinfo
|
Zeigt Informationen von jedem Bot im Botnet.
|
|
.bots
|
Zeigt alle Bots an
|
|
.bottree
|
Eine schöne Darstellung des Botnets.
|
|
.chaddr <bot> <neue_adresse>
|
ndert die Adresse des Bots.
|
.chaddr Bot2 62.2.84.27:3333
|
.link [bot2] <bot1>
|
Verbindet zwei Bots. Wenn zwei Bots angegeben sind, dann
verbindet es den ersten Bot mit dem zweiten Bot. Wenn nur
ein Bot angegeben ist, dann wird der angegebene Bot zum Bot
gelinkt, mit welchem du jetzt verbunden bist.
|
.link bot2 bot3
|
.unlink [bot2] <bot1>
|
Trennt die Verbindung des Bots. Sonst gleich wie oben (.link).
|
.unlink bot5
|
7 TCL-Scripts
7.1 Fertige Scripts herunterladen
Es gibt für Eggdrops sogenannte Scripts, mit welchem man die
Funktionen vom Eggdrop fast unendlich erweitern kann. Du findest
TCL-Scripts unter:
http://www.egghelp.org/tcl.shtml
http://mars.age.psu.edu/
Wenn du ein Script heruntergeladet hast, dann speicherst du es im
Verzeichnis scripts, welches sich im Eggdropverzeichnis befindet.
Anschliessend öffnest du das Config-File und fügst ganz
hinten folgende Zeile ein, wobei scriptname natürlich für
den Scriptnamen steht:
source scripts/scriptname.tcl
Dann tippst du in der Party-Line des Bots .rehash ein, damit die
Änderungen wirksam werden. Schliesslich sollte das Script geladen
sein. Wenn der Bot abstürzt dann entferne die soeben hinzugefügte
Zeile und starte den Bot erneut. Das Script hatte wohl einen Fehler.
Wenn folgendes kommt:
[Zeit] TCL error [Prozedur]: Fehlermeldung
dann ist das Script auch fehlerhaft. Aber man kann es (vielleicht)
noch benutzen.
7.2 Selber programmieren
Hier ist ein alter von mir angefangener TCL-Scripting-Kurs: http://www.eggdrop.ch/oldstuff/tcl.htm
|
Letzte Änderung:
27.07.03
Copyright (C) 2003 by Thomas "tom" S. <tom at eggdrop.ch>
|
Dieser Text gehört zu www.eggdrop.ch
und ist urheberrechtlich geschützt. Das Weitergeben und Kopieren
dieses Textes ist erwünscht unter folgenden Bedingungen: 1.
Der Text muss so sein wie er ist und darf in keiner Weise verändert
oder in die eigene Homepage integriert werden. 2. Es muss ein deutlicher
Hinweis auf die Herkunft (www.eggdrop.ch)
vorhanden sein. 3. Der Text sollte wenigstens alle 3 Monate auf
Updates überprüft werden (siehe die Versionsnummer ganz
am Anfang des Textes!)
|