Thema: [VB.NET] KNLiB TokenParser
-
02.02.2011, 00:10 #1
[VB.NET] KNLiB TokenParser
Hallo,
Da mich immer wieder einige Personen angeschrieben haben, die Probleme mit den Tokens haben, habe ich heute einen TokenParser geschrieben. Mit dem TokenParser könnt ihr in wenigen Sekunden einen funktionierenden Bot Eurer Wahl schreiben. Es sind nur sehr wenige Schritte notwendig. Und das beste: Man muss sich nicht mit Tokens auskennen. Außerdem sind erweiterte Beispiele und Kommentare vorhanden, sodass sie jeder Coder verstehen muss. Wenn nicht fehlen einfach noch die Kentnisse, die man aber eigentlich besitzen muss, um fortzufahren.
Der nachfolgende Code muss in das client_Receive Event von der KNLib eingefügt werden:
Code:Dim t() As String = token.Split(vbNullChar) Select Case t(0) Case "(" clien.Login(TextBox2.Text, TextBox3.Text, TextBox4.Text) Case "e" onPublicMessage(t(1), t(3), t(2)) Case "r" onPrivateMessage(t(1), t(2), t(4)) Case "t" onActionMessage(t(1), t(3)) Case "l" onChannelJoin(t(2)) Case "w" onChannelLeave(t(1)) Case "," onPing(t(1).Split("|")(0), t(1).Split("|")(1)) Case "u" Dim userList As New List(Of String) For i As Integer = 2 To t.Length - 1 If Regex.IsMatch(t(i), "([0-9]+/,[0-9]+/,[0-9]+|[a-z]|/-|p|-)") Then Dim userName() As String = t(i).Split(vbLf) If Not userName(0) = "-" And Not userName(0) = "p" And Not userName(0) = "b" And Not userName(0).StartsWith("pics/") Then userList.Add(userName(0)) End If End If Next onUserList(userList, t(1)) Case "k" onPopup(Regex.Match(t(4), "ûãCl(.+)õb").Groups(1).Value, Regex.Match(t(7), "h¾¼ûããCc(.+)õ").Groups(1).Value.Replace("õ~tp", "")) End Select
Code:' Dieses Event wird aufgerufen, wenn eine öffentliche Channelnachricht empfangen wurde. ' fromNickname: Nickname, von dem die Nachricht kam ' message: Nachricht, die empfangen wurde ' fromChannel: Channel, in dem die Nachricht geschrieben wurde Public Sub onPublicMessage(ByVal fromNickname As String, ByVal message As String, ByVal fromChannel As String) RichTextBox1.AppendText(fromNickname + ": " + message + vbLf) RichTextBox1.ScrollToCaret() End Sub ' Dieses Event wird aufgerufen, wenn eine private Nachricht empfangen wurde. ' fromNickname: Nickname, von dem die Nachricht kam ' toNickname: Nickname, an den die Nachricht geschrieben wurde (mehrere möglich) ' message: Nachricht, die empfangen wurde Public Sub onPrivateMessage(ByVal fromNickname As String, ByVal toNickname As String, ByVal message As String) RichTextBox1.AppendText(fromNickname + " (privat an " + toNickname + "): " + message + vbLf) RichTextBox1.ScrollToCaret() End Sub ' Dieses Event wird aufgerufen, wenn eine Aktionsnachricht empfangen wurde. ' Hinweis: fromNickname kann leer sein, dann ist es eine reine Funktion, ' z.B. /kiss. Ansonsten z.B. bei /me der normale Nickname. ' fromNickname: Nickname, der die Aktion ausgelöst hat ' message: Nachricht, die empfangen wurde Public Sub onActionMessage(ByVal fromNickname As String, ByVal message As String) If fromNickname = String.Empty Then RichTextBox1.AppendText(">>> " + message + vbLf) Else RichTextBox1.AppendText(fromNickname + " " + message + vbLf) End If RichTextBox1.ScrollToCaret() End Sub ' Dieses Event wird ausgelöst, wenn ein User den Channel betreten hat. ' nickname: Nickname, der sich neu eingeloggt hat Public Sub onChannelJoin(ByVal nickname As String) ListBox1.Items.Add(nickname) End Sub ' Dieses Event wird ausgelöst, wenn ein User den Channel verlassen hat. ' nickname: Nickname, der sich aus dem Channel ausgeloggt hat Public Sub onChannelLeave(ByVal nickname As String) ListBox1.Items.Remove(nickname) End Sub ' Dieses Event wird ausgelöst, wenn man selbst gepingt worden ist. ' nickname: Nickname, der Dich gepingt hat ' key: Ein Zeitstempel um später anzuzeigen, wie lange der Ping gedauert hat Public Sub onPing(ByVal nickname As String, ByVal key As String) MessageBox.Show("Empfange Ping von " + nickname + " mit dem Key " + key + "...", "Achtung") End Sub ' Dieses Event wird ausgelöst, wenn eine Userliste (Nickname) empfangen wurde. ' userList: Liste aller Chatter, die im Channel eingeloggt sind ' channel: Der Name des aktuellen Channels, hier vielseitig weiterverwendbar Public Sub onUserList(ByVal userList As List(Of String), ByVal channel As String) ListBox1.Items.Clear() For Each nickname In userList ListBox1.Items.Add(nickname) Next myChannel = channel End Sub ' Dieses Event wird ausgelöst, wenn man im Chat ein Popup-Fenster empfangen hat. ' title: Der Title des Fensters ' message: Die Nachricht (der Inhalt) des Fensters Public Sub onPopup(ByVal title As String, ByVal message As String) MessageBox.Show(message, title, MessageBoxButtons.OK, MessageBoxIcon.Information) End Sub
Grüße
-
08.02.2011, 16:15 #2
[VB.NET] KNLiB TokenParser
Kleiner Push für die, die es noch nicht gesehen haben, falls es während der Downtime untergegangen ist.
-
19.02.2011, 07:20 #3
- Registriert seit
- 30.01.2011
- Beiträge
- 17
Thanked 18 Times in 17 Posts[VB.NET] KNLiB TokenParser
Error 1 't' is already declared as a parameter of this method.
egal was ich dahin mache immer kommt das selbe kannse vill helfen ?
-
19.02.2011, 11:16 #4
- Registriert seit
- 21.07.2012
- Beiträge
- 24
Thanked 0 Times in 0 Posts
-
19.02.2011, 16:59 #5
- Registriert seit
- 30.01.2011
- Beiträge
- 17
Thanked 18 Times in 17 Posts[VB.NET] KNLiB TokenParser
Ja , war Zu müde kamm von der nachtschicht habs hinbekommen
danke trotzdem
Ähnliche Themen
-
Release KNLib ersatz (v9.0 AWV)
Von Bubble Gum im Forum Knuddels BotsAntworten: 4Letzter Beitrag: 05.06.2013, 15:46 -
[Source] KNLib
Von Devon im Forum SourcecodeAntworten: 26Letzter Beitrag: 05.05.2013, 22:37 -
Wo finde ich die Knlib.dll ?
Von SmK147 im Forum SupportAntworten: 1Letzter Beitrag: 27.03.2013, 17:33 -
[C#] TokenParser
Von silently im Forum SourcecodeAntworten: 0Letzter Beitrag: 15.02.2011, 10:24
Diese Seite nutzt Cookies, um das Nutzererlebnis zu verbessern. Klicken Sie hier, um das Cookie-Tracking zu deaktivieren.