Covey's IRC

Discussion in 'Archives' started by Jdhp_Admin, May 27, 2007.

Covey's IRC
  1. Unread #1 - May 27, 2007 at 6:13 PM
  2. Jdhp_Admin
    Referrals:
    0

    Jdhp_Admin Guest

    Covey's IRC

    In coveys irc source what sub sends the data to the server? that would be most appriciated.
     
  3. Unread #2 - May 27, 2007 at 6:53 PM
  4. Covey
    Joined:
    Sep 9, 2005
    Posts:
    4,510
    Referrals:
    9
    Sythe Gold:
    9
    Discord Unique ID:
    807246764155338833
    Discord Username:
    Covey#1816

    Covey Creator of EliteSwitch
    Retired Sectional Moderator Visual Basic Programmers

    Covey's IRC

    I'm too lazy to get my source cd and load them so post it here and ill tell ya :p
     
  5. Unread #3 - May 28, 2007 at 2:58 PM
  6. Jdhp_Admin
    Referrals:
    0

    Jdhp_Admin Guest

    Covey's IRC

    Heres the code for the IRC
    Code:
    Dim OldNick$, Nick$, Channel$, Data$
    Dim Connected As Boolean
    
    Private Sub cmdChat_Click()
        On Error GoTo Oops
        If Trim(txtNick.Text) = "" Or Trim(txtChannel.Text) = "" Then MsgBox "Make sure you have entered a nickname and channel name before trying to enter the IRC Chat.", vbInformation, "IRC Chat": Exit Sub
        wnskChat.Close
        Nick$ = Trim(txtNick.Text)
        OldNick$ = Nick$ & Int(Rnd * 9999)
        Channel$ = Trim(txtChannel.Text)
        If Trim(txtServer.Text) = "" Then wnskChat.Connect Trim("swiftirc.net"), 6667 Else wnskChat.Connect Trim(txtServer.Text), 6667
        sstChat.TabCaption(1) = Channel$
        sstChat.Visible = True
        fraChat.Visible = False
        cmdDC.Visible = True
        tmrTimeout.Enabled = True
        Exit Sub
    Oops:
        MsgBox "An error has occured while trying to connect to the server.", vbInformation, "Error"
    End Sub
    
    Private Sub cmdDC_Click()
        On Error Resume Next
        wnskChat.SendData "QUIT :Download EliteSwitch Today" & vbCrLf
        fraChat.Visible = True
        sstChat.Visible = False
        rtbChatStatus.Text = ""
        rtbChat.Text = ""
        txtChatMsg.Text = ""
        sstChat.TabCaption(1) = ""
        lstUsers.Clear
        cmdDC.Visible = False
        tmrTimeout.Enabled = False
        Connected = False
    End Sub
    
    Private Sub wnskChat_Connect()
        On Error Resume Next
        Connected = True
        wnskChat.Listen
        LogText rtbChatStatus, "*** Connecting to the server", &H7F0000
        Send "NICK " + Nick$
        Send "USER " & Nick$ & " " & wnskChat.LocalIP & " EliteSwitch User"
    End Sub
    
    Private Sub wnskChat_DataArrival(ByVal bytesTotal As Long)
        On Error Resume Next
        For X& = 1 To bytesTotal
            Dim Temp$
            wnskChat.GetData Temp$, vbString, 1
            If Temp$ = Chr$(10) Then ProcessCmd: Data$ = ""
            If Not (Asc(Temp$) = 10 Or Asc(Temp$) = 13) Then Data$ = Data$ + Temp$
        Next
    End Sub
    
    Private Sub tmrTimeout_Timer()
        If Not (Connected) Then MsgBox "The connection to the server timed out!" & vbCrLf & "You may not be connected to the internet.", vbInformation, "IRC Chat": cmdDC_Click
    End Sub
    
    Sub Send(Msg$)
    On Error GoTo Oops
        wnskChat.SendData Msg$ + vbCrLf
        Exit Sub
    Oops:
        MsgBox "An error has occured while trying to send data to the server." + vbCrLf + "You may have been disconnected!", vbInformation, "IRC Chat"
    End Sub
    
    Sub ProcessCmd()
        On Error Resume Next
        Dim SplitMsg() As String, SplitCmd() As String, SplitNotice() As String, SplitUsers() As String, BanMsg() As String
        If InStr(Data$, "PING") > 0 Then
            Dim Params$
            Params$ = Right$(Data$, Len(Data$) - (InStr(Data$, "PING") + 4))
            Send "PONG " + Params$
            LogText rtbChatStatus, vbCrLf & "PING? PONG!" & vbCrLf, &H9300&
            Exit Sub
        End If
        If Left$(Data$, 1) = ":" Then
            SplitMsg() = Split(Data$, " ", 2)
            SplitCmd() = Split(SplitMsg(1), " ", 2)
            Select Case UCase(SplitCmd(0))
                Case "NOTICE"
                    If InStr(1, SplitCmd(1), UCase("Auth :"), vbTextCompare) = 1 Then
                        SplitNotice() = Split(SplitCmd(1), UCase("Auth :"))
                    ElseIf InStr(1, SplitCmd(1), Nick$, vbTextCompare) = 1 Then
                        SplitNotice() = Split(SplitCmd(1), Nick$ & " :")
                    End If
                    LogText rtbChatStatus, SplitNotice(1), &H7F&
                Case "PRIVMSG"
                    If InStr(1, LCase(SplitCmd(1)), LCase(Channel$) & " :", vbTextCompare) = 1 Then
                        SplitNotice() = Split(SplitCmd(1), ":ACTION", 2)
                        BanMsg() = Split(SplitNotice(1), "", 2)
                        LogText rtbChat, "* " & GetUser & BanMsg(0), &H9C009C
                    ElseIf InStr(1, LCase(SplitCmd(1)), LCase(Channel$), vbTextCompare) = 1 Then
                        SplitNotice() = Split(LCase(SplitCmd(1)), LCase(Channel$ & " :"))
                        LogText rtbChat, "<" & GetUser & "> " & SplitNotice(1), &H0&
                    ElseIf InStr(1, LCase(SplitCmd(1)), LCase(Nick$), vbTextCompare) = 1 Then
                        SplitNotice() = Split(LCase(SplitCmd(1)), LCase(Nick$ & " :"))
                        LogText rtbChat, "--> *" & GetUser & "* " & SplitNotice(1), &H7F0000
                    End If
                Case "JOIN"
                    If GetUser = Nick$ Then LogText rtbChat, "* Now talking in " & Channel$, &H9300& Else LogText rtbChat, "* " & GetUser & " has joined " & Channel$, &H9300&
                    lblCount.Caption = lstUsers.ListCount & " people in channel"
                Case "QUIT"
                    SplitNotice() = Split(SplitCmd(1), ":", 2)
                    For i = 0 To lstUsers.ListCount
                        If lstUsers.List(i) = GetUser Then lstUsers.RemoveItem (i)
                        If Mid(lstUsers.List(i), 2) = GetUser Then lstUsers.RemoveItem (i)
                    Next i
                    LogText rtbChat, "* " & GetUser & " has quit IRC (" & SplitNotice(1) & ")", &H7F0000
                    lblCount.Caption = lstUsers.ListCount & " people in channel"
                Case "NICK"
                    For i = 0 To lstUsers.ListCount
                        If lstUsers.List(i) = GetUser Then lstUsers.RemoveItem (i)
                        If Mid(lstUsers.List(i), 2) = GetUser Then lstUsers.RemoveItem (i)
                    Next i
                    SplitNotice() = Split(SplitCmd(1), ":")
                    lstUsers.AddItem SplitNotice(1)
                    LogText rtbChat, "* " & GetUser & " is now known as " & SplitNotice(1), &H9300&
                    lblCount.Caption = lstUsers.ListCount & " people in channel"
                Case "PART"
                    LogText rtbChat, "* " & GetUser & " has left " & Channel$, &H9300&
                    For i = 0 To lstUsers.ListCount
                        If lstUsers.List(i) = GetUser Then lstUsers.RemoveItem (i)
                        If Mid(lstUsers.List(i), 2) = GetUser Then lstUsers.RemoveItem (i)
                    Next i
                    lblCount.Caption = lstUsers.ListCount & " people in channel"
                Case "MODE"
                    SplitNotice() = Split(Data$, ":")
                    If Trim(SplitNotice(1)) = Nick$ & " MODE " & Nick$ Then LogText rtbChat, "* " & Nick$ & " sets mode " & SplitNotice(2), &H9300& Else SplitNotice() = Split(SplitCmd(1), " ", 2): LogText rtbChat, "* " & GetUser & " sets mode " & SplitNotice(1), &H9300&
                Case "KICK"
                    SplitNotice() = Split(SplitCmd(1), " ", 3)
                    BanMsg() = Split(SplitNotice(2), ":", 2)
                    If SplitNotice(1) = Nick$ Then
                        lstUsers.Clear
                        rtbChat.Text = ""
                        LogText rtbChat, "* You were kicked by " & GetUser & " " & BanMsg(1), &H9300&
                    Else
                        LogText rtbChat, "* " & SplitNotice(1) & " was kicked by " & GetUser & " " & BanMsg(1), &H9300&
                        For i = 0 To lstUsers.ListCount
                            If lstUsers.List(i) = SplitNotice(1) Then lstUsers.RemoveItem (i)
                            If Mid(lstUsers.List(i), 2) = SplitNotice(1) Then lstUsers.RemoveItem (i)
                        Next i
                        lblCount.Caption = lstUsers.ListCount & " people in channel"
                    End If
                Case "001": SplitNotice() = Split(SplitCmd(1), ":"): LogText rtbChatStatus, SplitNotice(1), &H0&
                Case "002": SplitNotice() = Split(SplitCmd(1), ":"): LogText rtbChatStatus, SplitNotice(1) & vbCrLf, &H0&
                Case "003": SplitNotice() = Split(SplitCmd(1), ":"): LogText rtbChatStatus, SplitNotice(1), &H0&
                Case "004": SplitNotice() = Split(SplitCmd(1), " ", 2): LogText rtbChatStatus, SplitNotice(1), &H0&
                Case "005": SplitNotice() = Split(SplitCmd(1), " ", 2): LogText rtbChatStatus, SplitNotice(1), &H0&
                Case "251": SplitNotice() = Split(SplitCmd(1), ":"): LogText rtbChatStatus, vbCrLf & SplitNotice(1), &H0&
                Case "252": SplitNotice() = Split(SplitCmd(1), " "): LogText rtbChatStatus, SplitNotice(1) & " operator(s) " & SplitNotice(3), &H0&
                Case "253": SplitNotice() = Split(SplitCmd(1), " "): LogText rtbChatStatus, SplitNotice(1) & " unknown " & SplitNotice(3), &H0&
                Case "254": SplitNotice() = Split(SplitCmd(1), " "): LogText rtbChatStatus, SplitNotice(1) & " channel(s) " & SplitNotice(3), &H0&
                Case "255": SplitNotice() = Split(SplitCmd(1), ":", 2): LogText rtbChatStatus, SplitNotice(1), &H0&
                Case "265": SplitNotice() = Split(SplitCmd(1), ":", 2): LogText rtbChatStatus, vbCrLf & SplitNotice(1), &H0&
                Case "266": SplitNotice() = Split(SplitCmd(1), ":", 2): LogText rtbChatStatus, SplitNotice(1), &H0&
                Case "307": SplitNotice() = Split(SplitCmd(1), Nick$ & " "): LogText rtbChatStatus, SplitNotice(1), &H0&
                Case "311": SplitNotice() = Split(SplitCmd(1), Nick$ & " "): LogText rtbChatStatus, vbCrLf & SplitNotice(1), &H0&
                Case "312": SplitNotice() = Split(SplitCmd(1), Nick$ & " "): LogText rtbChatStatus, SplitNotice(1), &H0&
                Case "318": SplitNotice() = Split(SplitCmd(1), Nick$ & " "): LogText rtbChatStatus, SplitNotice(1), &H0&
                Case "319": SplitNotice() = Split(SplitCmd(1), Nick$ & " "): LogText rtbChatStatus, SplitNotice(1), &H0&
                Case "331": LogText rtbChat, "No topic set in " & Channel$, &H0&
                Case "332": SplitNotice() = Split(SplitCmd(1), ":", 2): LogText rtbChat, "* Topic is '" & SplitNotice(1) & "'", &H9300&
                Case "333": SplitNotice() = Split(SplitCmd(1), " "): LogText rtbChat, "* Topic was set by " & SplitNotice(2), &H9300&
                Case "353"
                    SplitNotice() = Split(SplitCmd(1), ":", 2)
                    SplitUsers() = Split(SplitNotice(1), " ")
                    For i = 0 To UBound(SplitUsers())
                        If Trim(SplitUsers(i)) = "" Then Else lstUsers.AddItem SplitUsers(i)
                    Next i
                    lblCount.Caption = lstUsers.ListCount & " people in channel"
                Case "372": SplitNotice() = Split(SplitCmd(1), ":", 2): LogText rtbChatStatus, SplitNotice(1), &H0&
                Case "375": SplitNotice() = Split(SplitCmd(1), ":", 2): LogText rtbChatStatus, vbCrLf & SplitNotice(1), &H0&
                Case "376": Send "JOIN :" & Channel$
                Case "401": SplitNotice() = Split(SplitCmd(1), ":", 2): LogText rtbChatStatus, "* " & SplitNotice(1), &H7F&
                Case "404": SplitNotice() = Split(SplitCmd(1), ":", 2): LogText rtbChatStatus, "* " & SplitNotice(1), &H7F&
                Case "412": LogText rtbChatStatus, "* Try sending a message next time dickhead", &H7F&
                Case "432": LogText rtbChatStatus, "*** " & Nick$ & " is a forbidden nickname" & vbCrLf & "*** Your nickname has been changed to " & OldNick$, &H7F&: Nick$ = OldNick$: Send "NICK " + Nick$
                Case "433": Nick$ = OldNick$: SplitNotice() = Split(SplitCmd(1), ":"): LogText rtbChatStatus, "* " & OldNick$ & " " & SplitNotice(1) & vbCrLf & "* Your nickname has been changed to " & Nick$, &H7F&: Send "NICK " + Nick$
                Case "447": SplitNotice() = Split(SplitCmd(1), ":", 2): LogText rtbChatStatus, "* " & SplitNotice(1), &H7F&
                Case "474": LogText rtbChat, "* Cannot join channel " & Channel$ & " (address is banned)", &H7F&
            End Select
        End If
    End Sub
    
    Private Sub LogText(rtfBox As RichTextBox, strData As String, strcolor As String)
        On Error Resume Next
        With rtfBox
            .SelStart = Len(.Text)
            .SelColor = strcolor
            .SelText = strData & vbCrLf
            .SelStart = Len(.Text)
        End With
    End Sub
    
    Private Sub GetCmd(Cmd As String, FWord As String, SWord As String, Msg As String)
        On Error Resume Next
        Select Case LCase(Cmd)
            Case "/me": wnskChat.SendData "PRIVMSG " & Channel$ & " :ACTION " & FWord & " " & SWord & " " & Msg & "" & vbCrLf: LogText rtbChat, "<" & Nick$ & "> " & FWord & " " & SWord & " " & Msg, &H9C009C
            Case "/nick": wnskChat.SendData "NICK :" & FWord & vbCrLf: OldNick$ = Nick$: Nick$ = FWord
            Case "/quit": wnskChat.SendData "QUIT :" & FWord & " " & SWord & " " & Msg & vbCrLf: rtbChat.Text = "": lstUsers.Clear: LogText rtbChat, "* Disconnected", &H7F0000: LogText rtbChatStatus, "* Disconnected", &H7F0000
            Case "/whois": wnskChat.SendData "WHOIS :" & FWord & vbCrLf
            Case "/query": wnskChat.SendData "PRIVMSG " & FWord & " :" & SWord & " " & Msg & vbCrLf: LogText rtbChat, "--> *" & FWord & "* " & SWord & " " & Msg, &H7F0000
            Case "/msg": wnskChat.SendData "PRIVMSG " & FWord & " :" & SWord & " " & Msg & vbCrLf: LogText rtbChat, "--> *" & FWord & "* " & SWord & " " & Msg, &H7F0000
            Case "/join": wnskChat.SendData "PART " & Channel$ & vbCrLf: rtbChat.Text = "": lstUsers.Clear: wnskChat.SendData "JOIN :" & FWord & vbCrLf: sstChat.TabCaption(1) = FWord
            Case Else: wnskChat.SendData "PRIVMSG " & Channel$ & " :" & Cmd & " " & FWord & " " & SWord & " " & Msg & vbCrLf: LogText rtbChat, "<" & Nick$ & "> " & Cmd & " " & FWord & " " & SWord & " " & Msg, &H0&
        End Select
        txtChatMsg.Text = ""
    End Sub
    
    Public Function GetUser() As String
        On Error Resume Next
        Dim User1() As String, User2() As String
        User1 = Split(Data$, "!")
        User2 = Split(User1(0), ":")
        GetUser = User2(1)
    End Function
    
    Private Sub txtChatMsg_KeyPress(KeyAscii As Integer)
        On Error Resume Next
        Dim SplitWords() As String, Cmd As String, FWord As String, SWord As String, Msg As String
        If KeyAscii = "13" Then SplitWords() = Split(Trim(txtChatMsg.Text), " ", 4): Cmd = SplitWords(0): FWord = SplitWords(1): SWord = SplitWords(2): Msg = SplitWords(3): GetCmd Cmd, FWord, SWord, Msg
    End Sub
    
     
  7. Unread #4 - May 28, 2007 at 6:18 PM
  8. 5cript
    Joined:
    Jan 22, 2007
    Posts:
    138
    Referrals:
    1
    Sythe Gold:
    0

    5cript Active Member

    Covey's IRC

    Thats just awesome Covey :)
     
  9. Unread #5 - May 28, 2007 at 10:22 PM
  10. Covey
    Joined:
    Sep 9, 2005
    Posts:
    4,510
    Referrals:
    9
    Sythe Gold:
    9
    Discord Unique ID:
    807246764155338833
    Discord Username:
    Covey#1816

    Covey Creator of EliteSwitch
    Retired Sectional Moderator Visual Basic Programmers

    Covey's IRC

    Code:
    Sub Send(Msg$)
    On Error GoTo Oops
        wnskChat.SendData Msg$ + vbCrLf
        Exit Sub
    Oops:
        MsgBox "An error has occured while trying to send data to the server." + vbCrLf + "You may have been disconnected!", vbInformation, "IRC Chat"
    End Sub
     
  11. Unread #6 - May 28, 2007 at 10:58 PM
  12. jdsfighter
    Joined:
    Jan 21, 2007
    Posts:
    603
    Referrals:
    0
    Sythe Gold:
    0

    jdsfighter Forum Addict
    Visual Basic Programmers

    Covey's IRC

    Lol I forgot to post and tell you I already told Jacob the answer. He is hopeless. :p
     
< | Leerrrooyyy Jeennkkinnnss >

Users viewing this thread
1 guest


 
 
Adblock breaks this site