Skip to content
Home > Programming > paltalk bots

paltalk bots

Viewing 15 posts - 1 through 15 (of 39 total)
  • Author
    Posts
  • #186963
    Eves
    Member

    Since Pal did it’s upgrade in March none of my bots will work in my room. I have the admin bot 10, the winamp bot 10. Nothing has changed on my pc but pals upgrade. Am I the only 1 having problems if who what do I do?

    from the newbie ❓

    #187001
    String
    Member

    There were a few small changes made to the admin console in pal recently. That could be whats causing your admin bot to malfunction.

    Who are the authors of your bots? Try contacting them.

    #187000
    Eves
    Member

    not sure who the authors are but under “about” by Locaohacker
    Some codes from Departure, Method, Nano and the people from VBform(dot)com
    ?

    #186999
    Admin
    Administrator

    umm I was having some issues too but i though it was cause I wasnt the admin of the room I was testing, but if you an admin then I got to chek and see

    #186998
    wazzzup
    Member

    i had found listview don’t work with green and blue rooms :d i haven’t get it yet

    #186997
    Admin
    Administrator

    K I think there like difference is the api for black room and color rooms like this is for the text input in a room.
    Color room

    Dim splitterwindowex As Long, classcpanecontainerex As Long, atlffdd As Long
    Dim atl As Long, atlaxwin As Long, x As Long
    Dim richeditw As Long
    splitterwindowex = FindWindow("splitterwindowex", vbNullString)
    splitterwindowex = FindWindowEx(splitterwindowex, 0&, "splitterwindowex", vbNullString)
    splitterwindowex = FindWindowEx(splitterwindowex, 0&, "splitterwindowex", vbNullString)
    splitterwindowex = FindWindowEx(splitterwindowex, 0&, "splitterwindowex", vbNullString)
    classcpanecontainerex = FindWindowEx(splitterwindowex, 0&, "classcpanecontainerex", vbNullString)
    atlffdd = FindWindowEx(classcpanecontainerex, 0&, "atl:008ffdd0", vbNullString)
    atl = FindWindowEx(atlffdd, 0&, "atl:00900098", vbNullString)
    atlaxwin = FindWindowEx(atl, 0&, "atlaxwin90", vbNullString)
    x = FindWindowEx(atlaxwin, 0&, "#32770", vbNullString)
    richeditw = FindWindowEx(x, 0&, "richedit20w", vbNullString)
    richeditw = FindWindowEx(x, richeditw, "richedit20w", vbNullString)

    black room

    Dim splitterwindowex As Long, atl As Long, atlaxwin As Long
    Dim x As Long, richeditw As Long
    splitterwindowex = FindWindow("splitterwindowex", vbNullString)
    splitterwindowex = FindWindowEx(splitterwindowex, 0&, "splitterwindowex", vbNullString)
    splitterwindowex = FindWindowEx(splitterwindowex, 0&, "splitterwindowex", vbNullString)
    splitterwindowex = FindWindowEx(splitterwindowex, 0&, "splitterwindowex", vbNullString)
    atl = FindWindowEx(splitterwindowex, 0&, "atl:00900098", vbNullString)
    atlaxwin = FindWindowEx(atl, 0&, "atlaxwin90", vbNullString)
    x = FindWindowEx(atlaxwin, 0&, "#32770", vbNullString)
    richeditw = FindWindowEx(x, 0&, "richedit20w", vbNullString)
    richeditw = FindWindowEx(x, richeditw, "richedit20w", vbNullString)`
    The difference I see is this is extra in the blue room
    
    classcpanecontainerex = FindWindowEx(splitterwindowex, 0&, "classcpanecontainerex", vbNullString)
    atlffdd = FindWindowEx(classcpanecontainerex, 0&, "atl:008ffdd0", vbNullString)

    So I added this code on the roomsend of the funtext like this
    `Sub RoomSend(Text As String)
    Dim iHnd As Long, classcpanecontainerex As Long, atlffdd As Long
    Dim parent, child, alt As Long
    Dim start_pos&, end_pos&, txt_len&
    'iHnd = getPalSubForm(Form1.WindowClass, Form1.Combo1.Text, Form1.RoomOutboundTextBoxClass, Form1.SendTxtIndex)
    On Error Resume Next
    parent = FindWindow("DlgGroupChat Window Class", Form1.Combo1.Text)
    child = FindWindowEx(parent, 0, "SplitterWindowEx", vbNullString)
    child = FindWindowEx(child, 0, "SplitterWindowEx", vbNullString)
    child = FindWindowEx(child, 0, "SplitterWindowEx", vbNullString)
    child = FindWindowEx(child, 0, "SplitterWindowEx", vbNullString)
    classcpanecontainerex = FindWindowEx(child, 0&, "classcpanecontainerex", vbNullString)
    atlffdd = FindWindowEx(classcpanecontainerex, 0&, "atl:008ffdd0", vbNullString)
    alt = GetWindow(atlffdd, GW_Child)
    alt = GetWindow(alt, GW_HWNDNEXT)
    alt = FindWindowEx(alt, 0, "atlaxwin90", vbNullString)
    alt = FindWindowEx(alt, 0, "#32770", vbNullString)
    iHnd = FindWindowEx(alt, 0, "richedit20w", vbNullString)
    iHnd = FindWindowEx(alt, iHnd, "richedit20w", vbNullString)
    txt_len& = SendMessage(iHnd, WM_GETTEXTLENGTH, 0, 0)
    'Copy Text that has been typed in if any
    If txt_len& > 0 Then ' don't need all this if user not typing
    'disable editing, may not be needed
    Call EnableWindow(iHnd, 0)
    ' save user selection / cursor position
    Call SendMessage(iHnd, EM_GETSEL, ByVal VarPtr(start_pos&), ByVal VarPtr(end_pos&))
    ' select all text and cut
    Call SendMessage(iHnd, EM_SETSEL, 0, ByVal txt_len&)
    Call SendMessage(iHnd, WM_CUT, 0, 0)
    End If
    Call SendMessageSTRING(iHnd, WM_SETTEXT, 0&, Text$)
    Call SendMessageLong(iHnd, WM_KEYDOWN, 13, 0&)
    'Send any typing back to box
    If txt_len& > 0 Then
    ' text box is empty, paste saved text
    Call SendMessage(iHnd, WM_PASTE, 0, 0)
    ' restore selection / cursor position
    Call SendMessage(iHnd, EM_SETSEL, start_pos&, ByVal end_pos&)
    'enable editing
    Call EnableWindow(iHnd, 1)
    End If

    End Sub

    And that works for sending text in a color room πŸ™‚ but im guessing this part of the new code

    atlffdd = FindWindowEx(classcpanecontainerex, 0&, "atl:008ffdd0", vbNullString)

    Will need constant updates :swift:

    #186996
    wazzzup
    Member

    its work like champ ..Loco you rock πŸ˜‰

    #186995
    String
    Member

    Good bit of detective work there Loco!
    You could combine the 2 into one text send by simply checking for the existence of classcpanecontainerex. and if it doesn’t exist, move on to black room send code.

    #186994
    wazzzup
    Member

    another issue getlastline :d

    #186993
    Admin
    Administrator

    Yeps I gonna have to do that String πŸ™‚ and wassu For last line use this πŸ™‚

    Public Function GetLastLine()
    On Error Resume Next
    Dim mywindowclass As Long, classcpanecontainerex As Long, atlffdd As Long
    Dim wtlsplitterwindow As Long
    Dim atlfe As Long
    Dim atlaxwin As Long
    Dim x As Long
    Dim richedita As Long
    
    mywindowclass = FindWindow("DlgGroupChat Window Class", Form1.Combo1.Text)
    wtlsplitterwindow = FindWindowEx(mywindowclass, 0&, "SplitterWindowEx", vbNullString)
    wtlsplitterwindow = FindWindowEx(wtlsplitterwindow, 0&, "SplitterWindowEx", vbNullString)
    wtlsplitterwindow = FindWindowEx(wtlsplitterwindow, 0&, "SplitterWindowEx", vbNullString)
    wtlsplitterwindow = FindWindowEx(wtlsplitterwindow, 0&, "SplitterWindowEx", vbNullString)
    classcpanecontainerex = FindWindowEx(wtlsplitterwindow, 0&, "classcpanecontainerex", vbNullString)
    atlffdd = FindWindowEx(classcpanecontainerex, 0&, "atl:008ffdd0", vbNullString)
    atlfe = GetWindow(atlffdd, GW_Child)
    atlfe = GetWindow(atlfe, GW_HWNDNEXT)
    atlaxwin = FindWindowEx(atlfe, 0&, "atlaxwin90", vbNullString)
    atlaxwin = FindWindowEx(atlfe, atlaxwin, "atlaxwin90", vbNullString)
    x = FindWindowEx(atlaxwin, 0&, "#32770", vbNullString)
    richedita = FindWindowEx(x, 0&, "richedit20w", vbNullString)
    
    Form1.RichTextBox2.Text = GetLastLineTextChat(richedita)

    But if i were you I wait til monday so i can do as string suggested cause that will only work on color rooms πŸ™‚ and is weekend hehehehe Im out

    #186992
    wazzzup
    Member

    Thanks Loco have a Nice weekend all πŸ˜‰ dont drink and drive eheheh

    #186991
    Admin
    Administrator

    Lol only a little πŸ™‚ hehe hey string to check for the existence of the class wasn’t i suppose to do this

    If classcpanecontainerex = 0 Then

    Thats what I though :swift:

    #186990
    String
    Member

    That would work, yes.

    #186989
    Admin
    Administrator

    yeps i did that but it didn’t i guess i did it wrong 8) but i ended up just adding options and came our with this
    for room sending

    Sub RoomSend(Text As String)
    Dim iHnd As Long
    Dim parent, child, alt As Long, classcpanecontainerex As Long, atlffdd As Long
    Dim start_pos&, end_pos&, txt_len&
    'iHnd = getPalSubForm(Form1.WindowClass, Form1.Combo1.Text, Form1.RoomOutboundTextBoxClass, Form1.SendTxtIndex)
    On Error Resume Next
    parent = FindWindow("DlgGroupChat Window Class", Form1.Combo1.Text)
    child = FindWindowEx(parent, 0, "SplitterWindowEx", vbNullString)
    child = FindWindowEx(child, 0, "SplitterWindowEx", vbNullString)
    child = FindWindowEx(child, 0, "SplitterWindowEx", vbNullString)
    child = FindWindowEx(child, 0, "SplitterWindowEx", vbNullString)
    If Form1.Option5.Value = True Then
    alt = GetWindow(child, GW_Child)
    Else
    
    classcpanecontainerex = FindWindowEx(child, 0&, "classcpanecontainerex", vbNullString)
    atlffdd = GetWindow(classcpanecontainerex, GW_Child)
    alt = GetWindow(atlffdd, GW_Child)
    End If
    alt = GetWindow(alt, GW_HWNDNEXT)
    alt = FindWindowEx(alt, 0, "atlaxwin90", vbNullString)
    alt = FindWindowEx(alt, 0, "#32770", vbNullString)
    iHnd = FindWindowEx(alt, 0, "richedit20w", vbNullString)
    iHnd = FindWindowEx(alt, iHnd, "richedit20w", vbNullString)
    txt_len& = SendMessage(iHnd, WM_GETTEXTLENGTH, 0, 0)
    'Copy Text that has been typed in if any
    If txt_len& > 0 Then ' don't need all this if user not typing
    'disable editing, may not be needed
    Call EnableWindow(iHnd, 0)
    ' save user selection / cursor position
    Call SendMessage(iHnd, EM_GETSEL, ByVal VarPtr(start_pos&), ByVal VarPtr(end_pos&))
    ' select all text and cut
    Call SendMessage(iHnd, EM_SETSEL, 0, ByVal txt_len&)
    Call SendMessage(iHnd, WM_CUT, 0, 0)
    End If
    Call SendMessageSTRING(iHnd, WM_SETTEXT, 0&, Text$)
    Call SendMessageLong(iHnd, WM_KEYDOWN, 13, 0&)
    'Send any typing back to box
    If txt_len& > 0 Then
    ' text box is empty, paste saved text
    Call SendMessage(iHnd, WM_PASTE, 0, 0)
    ' restore selection / cursor position
    Call SendMessage(iHnd, EM_SETSEL, start_pos&, ByVal end_pos&)
    'enable editing
    Call EnableWindow(iHnd, 1)
    End If
    End Sub

    and get lastline

    Public Function GetLastLine()
    On Error Resume Next
    Dim mywindowclass As Long
    Dim wtlsplitterwindow As Long, classcpanecontainerex As Long, atlffdd As Long
    Dim atlfe As Long
    Dim atlaxwin As Long
    Dim x As Long
    Dim richedita As Long
    
    mywindowclass = FindWindow("DlgGroupChat Window Class", Form1.Combo1.Text)
    wtlsplitterwindow = FindWindowEx(mywindowclass, 0&, "SplitterWindowEx", vbNullString)
    wtlsplitterwindow = FindWindowEx(wtlsplitterwindow, 0&, "SplitterWindowEx", vbNullString)
    wtlsplitterwindow = FindWindowEx(wtlsplitterwindow, 0&, "SplitterWindowEx", vbNullString)
    wtlsplitterwindow = FindWindowEx(wtlsplitterwindow, 0&, "SplitterWindowEx", vbNullString)
    If Form1.Option5.Value = True Then
    atlfe = GetWindow(wtlsplitterwindow, GW_Child)
    Else
    classcpanecontainerex = FindWindowEx(wtlsplitterwindow, 0&, "classcpanecontainerex", vbNullString)
    atlffdd = GetWindow(classcpanecontainerex, GW_Child)
    atlfe = GetWindow(atlffdd, GW_Child)
    End If
    atlfe = GetWindow(atlfe, GW_HWNDNEXT)
    atlaxwin = FindWindowEx(atlfe, 0&, "atlaxwin90", vbNullString)
    atlaxwin = FindWindowEx(atlfe, atlaxwin, "atlaxwin90", vbNullString)
    x = FindWindowEx(atlaxwin, 0&, "#32770", vbNullString)
    richedita = FindWindowEx(x, 0&, "richedit20w", vbNullString)
    
    Form1.RichTextBox2.Text = GetLastLineTextChat(richedita)
    End Function

     

    here the greeter updated code, you will see i added 2 options withing a frame πŸ™‚ Im gonna move this to vb forums πŸ™‚

    #186988
    String
    Member

    Using your room send code above, I meant something like this.

    Sub RoomSend(Text As String)
    Dim iHnd As Long
    Dim parent, child, alt As Long, classcpanecontainerex As Long, atlffdd As Long
    Dim start_pos&, end_pos&, txt_len&
    On Error Resume Next
    
    parent = FindWindow("DlgGroupChat Window Class", Form1.Combo1.Text)
    child = FindWindowEx(parent, 0, "SplitterWindowEx", vbNullString)
    child = FindWindowEx(child, 0, "SplitterWindowEx", vbNullString)
    child = FindWindowEx(child, 0, "SplitterWindowEx", vbNullString)
    child = FindWindowEx(child, 0, "SplitterWindowEx", vbNullString)
    
    ''''''''' This in place of option button code'''''''''''''''''''''''''''''''
    classcpanecontainerex = FindWindowEx(child, 0&, "classcpanecontainerex", vbNullString)
    
    If classcpanecontainerex = 0 Then
    alt = GetWindow(child, GW_Child)
    Else
    atlffdd = GetWindow(classcpanecontainerex, GW_Child)
    alt = GetWindow(atlffdd, GW_Child)
    End If
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    alt = GetWindow(alt, GW_HWNDNEXT)
    alt = FindWindowEx(alt, 0, "atlaxwin90", vbNullString)
    alt = FindWindowEx(alt, 0, "#32770", vbNullString)
    iHnd = FindWindowEx(alt, 0, "richedit20w", vbNullString)
    iHnd = FindWindowEx(alt, iHnd, "richedit20w", vbNullString)
    txt_len& = SendMessage(iHnd, WM_GETTEXTLENGTH, 0, 0)
    'Copy Text that has been typed in if any
    If txt_len& > 0 Then ' don't need all this if user not typing
    'disable editing, may not be needed
    Call EnableWindow(iHnd, 0)
    'save user selection / cursor position
    Call SendMessage(iHnd, EM_GETSEL, ByVal VarPtr(start_pos&), ByVal VarPtr(end_pos&))
    ' select all text and cut
    Call SendMessage(iHnd, EM_SETSEL, 0, ByVal txt_len&)
    Call SendMessage(iHnd, WM_CUT, 0, 0)
    End If
    Call SendMessageSTRING(iHnd, WM_SETTEXT, 0&, Text$)
    Call SendMessageLong(iHnd, WM_KEYDOWN, 13, 0&)
    'Send any typing back to box
    If txt_len& > 0 Then
    ' text box is empty, paste saved text
    Call SendMessage(iHnd, WM_PASTE, 0, 0)
    ' restore selection / cursor position
    Call SendMessage(iHnd, EM_SETSEL, start_pos&, ByVal end_pos&)
    'enable editing
    Call EnableWindow(iHnd, 1)
    End If
    End Sub

     

    The example you posted works fine though.

Viewing 15 posts - 1 through 15 (of 39 total)
  • You must be logged in to reply to this topic.