Zum Inhalt springen

Special Remote Raw & CTCP

  1. Grundlagen zum mIRC Scripting
  2. mIRC Befehle
  3. Variablen im mIRC Scripting
  4. Identifiers im mIRC
  5. Der Editor des mIRC
  6. mIRC Aliases Tutorial
  7. Die mIRC Popupmenüs
  8. mIRC Remote
  9. Fehlersuche
  10. Abfragen im mIRC
  11. Schleifen im mIRC
  12. Timer im mIRC
  13. >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Special Remote Raw & CTCP <<< aktuelle Seite >>>>
  14. mIRC Arbeiten mit Textdateien
  15. mIRC – Scripte / Addons / Module

mIRC Scripting – Special Remote Raw & CTCP

Diese beiden Remote sind nicht ganz so Leicht zu handhaben wie die „normalen“ Remote. Gerade die für die Raw braucht man einige Erfahrungen. Dafür lässt sich damit das komplette mIRC umgestalten. Mit den CTCP ließen sich spezielle Funktionen in ein eigenes Script einbauen, ähnlich wie mit dem Befehl /signal. Nur das die CTCP zwischen zwei Usern ablaufen während /signal Server weit triggert. Schauen wir uns jetzt mal diese beiden Remote genauer an.

 

Special Remote CTCP

Die CTCP-Remote arbeiten ähnlich wie die alle anderen Remote auch, nur das sie mit „ctcp“ statt mit „on“ beginnen. Außerdem werden diese Remote grundsätzlich von einem anderen User ausgelöst und nicht vom Server. Die bekanntesten CTCP sind wohl PING, VERSION und FINGER. Wir werden hier zu Übungszwecken ein Script zu dem CTCP FINGER schreiben. Wenn also ein User folgendes eingibt: /ctcp DEIN_NICK finger erhält er als Antwort dein Namen, deine Emailadresse und deine Idlezeit. Mit dem folgenden Script werden wir diese Ausgabe für alle User mit Level 1 ändern.

ctcp 1:FINGER:*:{ haltdef ctcpreply $nick FINGER Finger nicht an mir herum, sonst gibt es Ärger ;o) }

Das einleitende Wort wurde ja bereits oben erklärt. Die „1“ steht für den Level des User, es wäre also auch denkbar an User mit höheren Level eine andere Meldung auszugeben. Das Wort „FINGER“ ist der Matchtext, somit können beliebig weiter CTCP’s geschrieben werden. Danach ist wieder der Ort (Raum = #, Query = ?, Beides = *) angegeben wo das Event ausgelöst werden kann. Durch das Wort haltdef wird die Standard ausgabe unterdrückt. Dann wird die Notice an den auslösenden User ausgegeben. Wie du also siehst sind die CTCP’s garnicht so besonders, außer vielleicht das einleitende Wort. Es sei noch angemerkt das der VERSION Standard-Reply nicht einfach unterdrückt werden kann.

 

Special Remote RAW

Jeder der schon mal im Chat war ist bewusst oder unbewusst mit Raws in Berührung gekommen. Dieses sind Meldungen die der Server an den User versendet. Als Beispiel hier soll uns der „/whois“ Befehl des IRC dienen. Wenn ein User eine /whois Anfrage an den Server stellt antwortet dieser mit verschiedenen Rawmeldungen. Es folgt jetzt ein kleines Script was diese Meldung mit den einzelnen Rawnummern in einem Fenster sichtbar macht.

raw *:*:{ window @RAWS echo @RAWS $numeric $1- }

Wie man sehen kann beginnen RAW-Remote nicht mit dem Wort „on“ sondern mit „raw“. Die zweite Zeile öffnet ein sogenanntes Userfenster mit den Standard Einstellungen. In der dritten Zeile wird jede eingehende RAW-Meldung über den „echo“ Befehl in das Userfenster ausgegeben. Hierbei sorgt der Identifer „$numeric“ für die Nummer der Meldung und der Identifer „$1-“ für den Text.

Nach dem du das Script in den Remotebereich des mIRC eingetragen hast wollen wir das Script einmal testen. Für dieses Beispiel ist mein Nick „Scripter123“, wenn du den gleichen Nick benutzt sollten die Meldungen identisch aussehen. Gib jetzt die folgende Zeile in dein Statusfenster ein: /whois tester007. Vorrausgesetzt es gibt keinen User im Netz der den Nicknamen „tester007“ benutzt, erhältst du folgende Meldungen: 
– 401 Scripter123 tester007 No such nick/channel 
– 318 Scripter123 tester007 End of /WHOIS list. 
So wie hier erscheinen die Meldungen nur in dem Userfenster nicht im Statusfenster des mIRC.

Die erste Meldung hat die Nummer 401. Diese Nummer müssten wir angeben, wenn wir die Meldung abfangen und ein Script dazu ausführen wollten (Beispiel folgt im nächsten Absatz). Jetzt folgt der Text der Meldung. Als erstes der Nickname des Empfängers. Danach der Nickname der mit dem „/whois“ abgefragt wurde. Dann der eigentliche Inhalt (Aussage) dieser Meldung. Die zweite Meldung ist vom Aufbau her gleich, nur das Sie eine andere Nummer hat und anderen Inhalt.

 
Raw im Einsatz

Nun wollen wir mal eine spezielle Meldung abfangen und in anderer Form ausgeben. Dazu schreiben wir ein Script das die Meldung mit der Rawnummer 401 verändert.

raw 401:*:{ haltdef echo -s FEHLER: $2 ist kein gültige Raum- oder Nickname! }

Das Wort raw und die Nummer sollten klar sein, doch was heißt das zweite Sternchen. Dieses Ersatzzeichen steht für einen Matchtext. In unserem Beispiel macht es wenig Sinn einen Matchtext anzugeben deshalb das Sternchen. Mit dem Befehl /haltdef wird die Standardausgabe des mIRC unterdrückt. Danach folgt die selbstdefinierte Fehlermeldung die im Statusfenster ausgegeben wird. Eines sei noch erwähnt, damit das Script einwandfrei funktioniert muss es vor dem oben angeführten Script im Editor stehen. Da sonst nur das obere Script ausgführt wird, weil es ja alle Raws abfängt, da es mit Sternchen statt einer speziellen Rawnummer arbeitet. Mit dem oberen Script, welches dir alle Rawnummern zeigt und dem wissen dieser Seite, sollte es dir möglich sein dein mIRC gründlich umzugestalten. Das Ganze erfordert allerdings ein wenig Übung und Erfahrung also lass dich nicht von Fehlschlägen entmutigen.

Weiter zu

mIRC Arbeiten mit Textdateien