Skip to content

Instantly share code, notes, and snippets.

@dbh4ck
Last active December 10, 2015 11:40
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save dbh4ck/52ebb4861c89d365648e to your computer and use it in GitHub Desktop.
Save dbh4ck/52ebb4861c89d365648e to your computer and use it in GitHub Desktop.
Nimbuzz Login, Avatar Grabber, Room Hang Bots wxPython GUI coded by db~@nc
#---------------------------------------------------------------------
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# -*- Nimbuzz Login, Avatar Grabber, Hang Bots -*-
# -*- Python (2.7.10) -*-
# -*- wxPython (2.8) -*-
# -*- Author : DB <dbh4ck@gmail.com> aka <db~@NC> -*-
# -*- GUI wxPython -*-
# -*- coded by db~@NC -*-
#---------------------------------------------------------------------
import os
import sys
import traceback
import types
import getpass
import locale
import warnings
import time
import logging
import random
import urllib
import threading,thread
from decimal import Decimal
import wx
if "2.8" in wx.version():
import wx.lib.pubsub.setupkwargs
else:
from wx.lib.pubsub import setuparg1
import wx.lib.agw.hyperlink as hl
import wx, wx.html
class MainWindow(wx.Frame):
def __init__(SELF,parent,id,title):
wx.Frame.__init__(SELF, None,-1,"wx_Nimbuzz Client Login, Avatar Grabber, Chatroom Hang Bots Coded by db~@NC",size=(635,700),style=wx.DEFAULT_FRAME_STYLE ^ wx.RESIZE_BORDER ^ wx.MAXIMIZE_BOX)
SELF.SetBackgroundColour((0xcc,0xff,0xcc))
SELF.initialize()
def initialize(SELF):
paneldblbl = wx.Panel(SELF,-1,pos =(0,2),size=(620,42))
paneldblbl.SetBackgroundColour((0xcc,0xff,0xcc))
db1_lbl_sizer = wx.BoxSizer(wx.HORIZONTAL)
db1_lbl = wx.StaticText(paneldblbl,wx.ALIGN_CENTER ,label="wx_Nimbuzz Client WXPYTHON GUI Coded by db~@NC")
db1_lbl_sizer.Add(db1_lbl,0,wx.ALL,5)
db1_lbl.SetForegroundColour(wx.BLUE)
font_db1_lbl = wx.Font(15, wx.DECORATIVE, wx.ITALIC, wx.BOLD)
db1_lbl.SetFont(font_db1_lbl)
def resource_path(relative):
if hasattr(sys,"_MEIPASS"):
return os.path.join(sys._MEIPASS, relative)
return os.path.join(relative)
image_sizer = wx.BoxSizer(wx.HORIZONTAL)
image = wx.StaticBitmap(SELF,-1,size=(620,90))
image.SetBitmap(wx.Bitmap(resource_path('images\db1.jpg')))
image_sizer.Add(image,0,wx.ALL,5)
panel1 = wx.Panel(SELF,-1,pos =(8,160),size=(235,200))
panel2 = wx.Panel(SELF,-1,pos =(8,400),size=(235,260))
panel3 = wx.Panel(SELF,-1,pos =(255,145),size=(363,215))
panel4 = wx.Panel(SELF,-1,pos =(255,400),size=(235,260))
panel5 = wx.Panel(SELF,-1,pos =(430,400),size=(190,260))
SELF.dblbl = wx.StaticBox(SELF, -1, 'Login ID:' , pos =(5,145),size=(240,220))
font_dblbl= wx.Font(11, wx.DECORATIVE, wx.ITALIC, wx.BOLD)
SELF.dblbl.SetForegroundColour(wx.BLUE)
SELF.dblbl.SetFont(font_dblbl)
SELF.dblbl2 = wx.StaticBox(SELF, -1, 'Online Contacts:' , pos =(5,380),size=(240,290))
font_dblbl2= wx.Font(11, wx.DECORATIVE, wx.ITALIC, wx.BOLD)
SELF.dblbl2.SetForegroundColour(wx.BLUE)
SELF.dblbl2.SetFont(font_dblbl2)
SELF.dblbl3 = wx.StaticBox(SELF, -1, 'Avatar Grabber:' , pos =(255,145),size=(368,220))
font_dblbl3 = wx.Font(11, wx.DECORATIVE, wx.ITALIC, wx.BOLD)
SELF.dblbl3.SetForegroundColour(wx.BLUE)
SELF.dblbl3.SetFont(font_dblbl3)
SELF.dblbl4 = wx.StaticBox(SELF, -1, 'Hang Bots:' , pos =(255,380),size=(368,290))
font_dblbl4= wx.Font(11, wx.DECORATIVE, wx.ITALIC, wx.BOLD)
SELF.dblbl4.SetForegroundColour(wx.BLUE)
SELF.dblbl4.SetFont(font_dblbl4)
panel1.SetBackgroundColour((0xcc,0xcc,0xff))
panel2.SetBackgroundColour((0xcc,0xcc,0xff))
panel3.SetBackgroundColour((0xcc,0xcc,0xff))
panel4.SetBackgroundColour((0xcc,0xcc,0xff))
panel4.SetBackgroundColour((0xcc,0xcc,0xff))
panel5.SetBackgroundColour((0xcc,0xcc,0xff))
#panel1.Hide()
#panel2.Hide()
SELF.dblbl_sizer = wx.StaticBoxSizer(SELF.dblbl, wx.VERTICAL)
SELF.dblbl2_sizer = wx.StaticBoxSizer(SELF.dblbl2, wx.VERTICAL)
SELF.dblbl3_sizer = wx.StaticBoxSizer(SELF.dblbl3, wx.VERTICAL)
SELF.dblbl4_sizer = wx.StaticBoxSizer(SELF.dblbl4, wx.VERTICAL)
font_lbl= wx.Font(10, wx.DECORATIVE, wx.ITALIC, wx.BOLD)
user_sizer = wx.BoxSizer(wx.HORIZONTAL)
user_lbl = wx.StaticText(panel1, label= "Username:")
user_lbl.SetForegroundColour(wx.BLUE)
user_lbl.SetFont(font_lbl)
user_sizer.Add(user_lbl,0,wx.LEFT|wx.TOP,10)
SELF.dblbl_sizer.Add(user_lbl,0,wx.ALL|wx.CENTER,5)
SELF.user = wx.TextCtrl(panel1, style=wx.TE_CENTER)
SELF.user.SetForegroundColour(wx.BLUE)
user_sizer.Add(SELF.user,0,wx.ALL,8)
SELF.dblbl_sizer.Add(SELF.user,0,wx.ALL|wx.CENTER,5)
font_1= wx.Font(11, wx.DECORATIVE, wx.NORMAL, wx.BOLD)
SELF.user.SetFont(font_1)
p_sizer = wx.BoxSizer(wx.HORIZONTAL)
p_lbl = wx.StaticText(panel1, label="Password:")
p_lbl.SetForegroundColour(wx.BLUE)
p_lbl.SetFont(font_lbl)
p_sizer.Add(p_lbl,0,wx.LEFT|wx.TOP,14)
SELF.dblbl_sizer.Add(p_lbl,0,wx.ALL|wx.CENTER,5)
SELF.password = wx.TextCtrl(panel1, style=wx.TE_PASSWORD|wx.TE_PROCESS_ENTER|wx.TE_CENTER)
SELF.password.SetForegroundColour(wx.BLUE)
p_sizer.Add(SELF.password,0,wx.ALL,8)
SELF.dblbl_sizer.Add(SELF.password,0,wx.ALL|wx.CENTER,5)
SELF.password.SetFont(font_1)
res_sizer = wx.BoxSizer(wx.HORIZONTAL)
res_lbl = wx.StaticText(panel1, label= "Resource:")
res_lbl.SetForegroundColour(wx.BLUE)
res_lbl.SetFont(font_lbl)
res_sizer.Add(res_lbl,0,wx.LEFT|wx.TOP,14)
SELF.dblbl_sizer.Add(res_lbl,0,wx.ALL|wx.CENTER,5)
SELF.res = wx.TextCtrl(panel1, style=wx.TE_CENTER)
SELF.res.SetForegroundColour(wx.BLUE)
res_sizer.Add(SELF.res,0,wx.ALL,8)
SELF.dblbl_sizer.Add(SELF.res,0,wx.ALL|wx.CENTER,5)
SELF.res.SetFont(font_1)
nickname_sizer = wx.BoxSizer(wx.HORIZONTAL)
nickname_lbl = wx.StaticText(panel1, label= "Nickname:")
nickname_lbl.SetForegroundColour(wx.BLUE)
nickname_lbl.SetFont(font_lbl)
nickname_sizer.Add(nickname_lbl,0,wx.LEFT|wx.CENTER,8)
SELF.dblbl_sizer.Add(nickname_lbl,0,wx.ALL|wx.CENTER,5)
SELF.nickname = wx.TextCtrl(panel1, style=wx.TE_CENTER)
SELF.nickname.SetForegroundColour(wx.BLUE)
nickname_sizer.Add(SELF.nickname,0,wx.ALL,8)
SELF.dblbl_sizer.Add(SELF.nickname,0,wx.ALL|wx.CENTER,5)
SELF.nickname.SetFont(font_1)
button_sizer = wx.BoxSizer(wx.HORIZONTAL)
SELF.button = wx.Button(panel1,-1,label="Login")
SELF.Bind(wx.EVT_BUTTON,SELF.OnButtonClick,SELF.button)
font_button= wx.Font(12, wx.DECORATIVE, wx.ITALIC, wx.BOLD)
SELF.button.SetFont(font_button)
SELF.button.SetForegroundColour(wx.RED)
button_sizer.Add(SELF.button,0,wx.LEFT,83)
SELF.dblbl_sizer.Add(SELF.button,0,wx.ALL|wx.CENTER,5)
listbox_sizer = wx.BoxSizer(wx.HORIZONTAL)
SELF.dbListBox = wx.ListBox(panel2,-1,size=(235,265),style=wx.LB_SINGLE|wx.LB_SORT)
listbox_sizer.Add(SELF.dbListBox,0,wx.CENTER,5)
SELF.dbListBox.SetForegroundColour(wx.BLUE)
font_dbListBox= wx.Font(9, wx.DECORATIVE, wx.NORMAL, wx.BOLD)
SELF.dbListBox.SetFont(font_dbListBox)
SELF.dbListBox.SetBackgroundColour((0xcc,0xcc,0xff))
SELF.dbListBox.Show(True)
avatar_sizer = wx.BoxSizer(wx.HORIZONTAL)
avatar_lbl = wx.StaticText(panel3, label= "Enter Target username [without '@nimbuzz.com']")
avatar_lbl.SetForegroundColour(wx.BLUE)
avatar_lbl.SetFont(font_lbl)
avatar_sizer.Add(avatar_lbl,0,wx.TOP|wx.RIGHT,-175)
SELF.dblbl3_sizer.Add(avatar_lbl,0,wx.ALL|wx.CENTER,5)
note_sizer = wx.BoxSizer(wx.HORIZONTAL)
note_lbl = wx.StaticText(panel3, label= "[ Note: Files are being saved at 'C:\Nimbuzz_Avatars' ]")
note_lbl.SetForegroundColour(wx.BLUE)
note_lbl.SetFont(font_lbl)
note_sizer.Add(note_lbl,0,wx.TOP|wx.RIGHT,-75)
SELF.dblbl3_sizer.Add(note_lbl,0,wx.ALL|wx.CENTER,5)
SELF.avatar = wx.TextCtrl(panel3, style=wx.TE_CENTER)
SELF.avatar.SetForegroundColour(wx.BLUE)
avatar_sizer.Add(SELF.avatar,0,wx.TOP|wx.LEFT,-130)
SELF.dblbl3_sizer.Add(SELF.avatar,0,wx.ALL|wx.CENTER,5)
SELF.avatar.SetFont(font_1)
button2_sizer = wx.BoxSizer(wx.HORIZONTAL)
SELF.button2 = wx.Button(panel3,-1,label="GRAB NOW!! ")
SELF.Bind(wx.EVT_BUTTON,SELF.OnButton2Click,SELF.button2)
font_button2= wx.Font(12, wx.DECORATIVE, wx.ITALIC, wx.BOLD)
SELF.button2.SetFont(font_button2)
SELF.button2.SetForegroundColour(wx.RED)
button2_sizer.Add(SELF.button2,0,wx.TOP|wx.RIGHT,-115)
SELF.dblbl3_sizer.Add(SELF.button2,0,wx.ALL|wx.CENTER,5)
bot1_sizer = wx.BoxSizer(wx.HORIZONTAL)
bot1_lbl = wx.StaticText(panel4, label= "bot 1:")
bot1_lbl.SetForegroundColour(wx.BLUE)
bot1_lbl.SetFont(font_lbl)
bot1_sizer.Add(bot1_lbl,0,wx.LEFT|wx.TOP,14)
SELF.dblbl4_sizer.Add(bot1_lbl,0,wx.ALL|wx.CENTER,5)
SELF.bot1 = wx.TextCtrl(panel4, style=wx.TE_CENTER)
SELF.bot1.SetForegroundColour(wx.BLUE)
bot1_sizer.Add(SELF.bot1,0,wx.ALL,8)
SELF.dblbl4_sizer.Add(SELF.bot1,0,wx.LEFT|wx.CENTER,15)
font_1= wx.Font(11, wx.DECORATIVE, wx.NORMAL, wx.BOLD)
SELF.bot1.SetFont(font_1)
bot2_sizer = wx.BoxSizer(wx.HORIZONTAL)
bot2_lbl = wx.StaticText(panel4, label= "bot 2:")
bot2_lbl.SetForegroundColour(wx.BLUE)
bot2_lbl.SetFont(font_lbl)
bot2_sizer.Add(bot2_lbl,0,wx.LEFT|wx.TOP,14)
SELF.dblbl4_sizer.Add(bot2_lbl,0,wx.ALL|wx.CENTER,5)
SELF.bot2 = wx.TextCtrl(panel4, style=wx.TE_CENTER)
SELF.bot2.SetForegroundColour(wx.BLUE)
bot2_sizer.Add(SELF.bot2,0,wx.ALL,8)
SELF.dblbl4_sizer.Add(SELF.bot2,0,wx.LEFT|wx.CENTER,5)
font_1= wx.Font(11, wx.DECORATIVE, wx.NORMAL, wx.BOLD)
SELF.bot2.SetFont(font_1)
bot3_sizer = wx.BoxSizer(wx.HORIZONTAL)
bot3_lbl = wx.StaticText(panel4, label= "bot 3:")
bot3_lbl.SetForegroundColour(wx.BLUE)
bot3_lbl.SetFont(font_lbl)
bot3_sizer.Add(bot3_lbl,0,wx.LEFT|wx.TOP,14)
SELF.dblbl4_sizer.Add(bot3_lbl,0,wx.ALL|wx.CENTER,5)
SELF.bot3 = wx.TextCtrl(panel4, style=wx.TE_CENTER)
SELF.bot3.SetForegroundColour(wx.BLUE)
bot3_sizer.Add(SELF.bot3,0,wx.ALL,8)
SELF.dblbl4_sizer.Add(SELF.bot3,0,wx.LEFT|wx.CENTER,5)
font_1= wx.Font(11, wx.DECORATIVE, wx.NORMAL, wx.BOLD)
SELF.bot3.SetFont(font_1)
bot4_sizer = wx.BoxSizer(wx.HORIZONTAL)
bot4_lbl = wx.StaticText(panel4, label= "bot 4:")
bot4_lbl.SetForegroundColour(wx.BLUE)
bot4_lbl.SetFont(font_lbl)
bot4_sizer.Add(bot4_lbl,0,wx.LEFT|wx.TOP,14)
SELF.dblbl4_sizer.Add(bot4_lbl,0,wx.ALL|wx.CENTER,5)
SELF.bot4 = wx.TextCtrl(panel4, style=wx.TE_CENTER)
SELF.bot4.SetForegroundColour(wx.BLUE)
bot4_sizer.Add(SELF.bot4,0,wx.ALL,8)
SELF.dblbl4_sizer.Add(SELF.bot4,0,wx.ALL|wx.CENTER,5)
SELF.bot4.SetFont(font_1)
bot5_sizer = wx.BoxSizer(wx.HORIZONTAL)
bot5_lbl = wx.StaticText(panel4, label= "bot 5:")
bot5_lbl.SetForegroundColour(wx.BLUE)
bot5_lbl.SetFont(font_lbl)
bot5_sizer.Add(bot5_lbl,0,wx.LEFT|wx.TOP,14)
SELF.dblbl4_sizer.Add(bot5_lbl,0,wx.ALL|wx.CENTER,5)
SELF.bot5 = wx.TextCtrl(panel4, style=wx.TE_CENTER)
SELF.bot5.SetForegroundColour(wx.BLUE)
bot5_sizer.Add(SELF.bot5,0,wx.ALL,8)
SELF.dblbl4_sizer.Add(SELF.bot5,0,wx.ALL|wx.CENTER,5)
SELF.bot5.SetFont(font_1)
botpw_sizer = wx.BoxSizer(wx.HORIZONTAL)
botpw_lbl = wx.StaticText(panel5, label= "Pass. :")
botpw_lbl.SetForegroundColour(wx.BLUE)
botpw_lbl.SetFont(font_lbl)
botpw_sizer.Add(botpw_lbl,0,wx.LEFT|wx.TOP,14)
SELF.dblbl4_sizer.Add(botpw_lbl,0,wx.ALL|wx.CENTER,5)
SELF.botpw = wx.TextCtrl(panel5, style=wx.TE_PASSWORD|wx.TE_PROCESS_ENTER|wx.TE_CENTER)
SELF.botpw.SetForegroundColour(wx.BLUE)
botpw_sizer.Add(SELF.botpw,0,wx.ALL,8)
SELF.dblbl4_sizer.Add(SELF.botpw,0,wx.ALL|wx.CENTER,5)
SELF.botpw.SetFont(font_1)
button3_sizer = wx.BoxSizer(wx.HORIZONTAL)
SELF.button3 = wx.Button(panel4,-1,label="HANG BOTS!! ")
SELF.Bind(wx.EVT_BUTTON,SELF.OnButton3Click,SELF.button3)
font_button3= wx.Font(12, wx.DECORATIVE, wx.ITALIC, wx.BOLD)
SELF.button3.SetFont(font_button2)
SELF.button3.SetForegroundColour(wx.RED)
button3_sizer.Add(SELF.button3,0,wx.TOP|wx.RIGHT,-115)
SELF.dblbl4_sizer.Add(SELF.button3,0,wx.ALL|wx.CENTER,5)
room_sizer = wx.BoxSizer(wx.HORIZONTAL)
room_lbl = wx.StaticText(panel5, label= "Room:")
room_lbl.SetForegroundColour(wx.BLUE)
room_lbl.SetFont(font_lbl)
room_sizer.Add(room_lbl,0,wx.LEFT|wx.TOP,14)
SELF.dblbl4_sizer.Add(room_lbl,0,wx.ALL|wx.CENTER,5)
SELF.room = wx.TextCtrl(panel5, style=wx.TE_CENTER)
SELF.room.SetForegroundColour(wx.BLUE)
room_sizer.Add(SELF.room,0,wx.ALL,8)
SELF.dblbl4_sizer.Add(SELF.room,0,wx.ALL|wx.CENTER,5)
SELF.room.SetFont(font_1)
hang_sizer = wx.BoxSizer(wx.HORIZONTAL)
hang_lbl = wx.StaticText(panel5, label= "[common password for all ids]")
hang_lbl.SetForegroundColour(wx.BLUE)
hang_lbl.SetFont(font_lbl)
hang_sizer.Add(hang_lbl,0,wx.TOP|wx.RIGHT,-15)
SELF.dblbl4_sizer.Add(hang_lbl,0,wx.ALL|wx.CENTER,5)
hang2_sizer = wx.BoxSizer(wx.HORIZONTAL)
hang2_lbl = wx.StaticText(panel5, label= "[ids must membered in room]")
hang2_lbl.SetForegroundColour(wx.BLUE)
hang2_lbl.SetFont(font_lbl)
hang2_sizer.Add(hang2_lbl,0,wx.TOP|wx.RIGHT,-15)
SELF.dblbl4_sizer.Add(hang2_lbl,0,wx.ALL|wx.CENTER,5)
main_sizer= wx.BoxSizer(wx.VERTICAL)
main_sizer.Add(db1_lbl_sizer,0,wx.ALL|wx.CENTER,3)
main_sizer.Add(image_sizer,0,wx.ALL|wx.CENTER,1)
main_sizer.Add(user_sizer,0,wx.TOP,-135)
main_sizer.Add(p_sizer,0,wx.TOP,-100)
main_sizer.Add(res_sizer,0,wx.TOP,-61)
main_sizer.Add(nickname_sizer,0,wx.TOP,-24)
main_sizer.Add(button_sizer,0,wx.TOP,2)
main_sizer.Add(avatar_sizer,0,wx.TOP|wx.LEFT,20)
main_sizer.Add(button2_sizer,0,wx.TOP|wx.LEFT,20)
main_sizer.Add(note_sizer,0,wx.TOP|wx.LEFT,10)
main_sizer.Add(bot1_sizer,0,wx.TOP,-237)
#main_sizer.Add(bot1_sizer,0,wx.TOP|wx.RIGHT,-240)
main_sizer.Add(bot2_sizer,0,wx.TOP|wx.RIGHT,-200)
main_sizer.Add(bot3_sizer,0,wx.TOP,-161)
main_sizer.Add(bot4_sizer,0,wx.TOP,-122)
main_sizer.Add(bot5_sizer,0,wx.TOP,-85)
main_sizer.Add(botpw_sizer,0,wx.TOP,-210)
main_sizer.Add(room_sizer,0,wx.TOP,-140)
main_sizer.Add(hang_sizer,0,wx.TOP,-155)
main_sizer.Add(button3_sizer,0,wx.TOP|wx.LEFT,85)
main_sizer.Add(hang2_sizer,0,wx.TOP,-170)
SELF.SetSizer(main_sizer)
SELF.Show(True)
SELF.Center()
def OnButtonClick(SELF,event):
STATUS = 'db here'
SHOW = 'chat'
NICK = SELF.nickname.GetValue()
SERVER = 'nimbuzz.com'
HOST = 'o.nimbuzz.com'
PORT = 5222
ROOM_SERVER = 'conference.nimbuzz.com'
USR = SELF.user.GetValue()
PW = SELF.password.GetValue()
RS = SELF.res.GetValue()
usrjid='%s@%s/%s'%(USR,SERVER,RS)
import xmpp
class dbconn(xmpp.Client):
def __init__(self):
self.client = xmpp.Client('nimbuzz.com', debug=False)
if self.client.connect( server=('o.nimbuzz.com',5222), secure=False ):
print ("Connected")
print ("\nLogging now..\n")
if self.client.auth(USR,PW,'res'):
print ("Logged in\n\n")
SELF.user.SetBackgroundColour(wx.GREEN)
SELF.password.SetBackgroundColour(wx.GREEN)
SELF.res.SetBackgroundColour(wx.GREEN)
SELF.nickname.SetBackgroundColour(wx.GREEN)
else:
print ("Unable to Login. Check your username and password")
SELF.user.SetBackgroundColour(wx.RED)
SELF.password.SetBackgroundColour(wx.RED)
SELF.res.SetBackgroundColour(wx.RED)
raw_input('Press Enter to exit...')
sys.exit(1)
else:
print ("Couldn't Connect. Restarting..")
os.execl(sys.executable, sys.executable, sys.argv[0])
prs = xmpp.simplexml.XML2Node(unicode("<presence><status>%s</status><priority>1</priority><show>%s</show><nick xmlns='http://jabber.org/protocol/nick'>%s</nick></presence>" % (STATUS,SHOW,NICK)).encode('utf8'))
self.client.send(prs)
roster = self.client.getRoster()
#self.client.sendInitPresence()
items = roster.getItems()
for jid in items:
name = roster.getName(jid)
jidres = roster.getResources(jid)
for res in jidres:
resource = roster.getResources(jid.split('/', 1)[0] + '/' + res)
dbcontactlist = u'%s %s/%s' % (name or '', jid, res)
SELF.dbListBox.Append(str(dbcontactlist))
def wake(self):
self.awake = True
# if [ res for res in roster.getResources(tojid) if res.startswith(tail) ]:
# break
#for res in roster.getResources(tojid):
# if res.startswith(tail):
# tojid = tojid.split('/', 1)[0] + '/' + res
if __name__ == '__main__':
logging.basicConfig(level=logging.ERROR, format='%(levelname)-8s %(message)s')
xmpp = dbconn()
def OnButton2Click(SELF,event):
nimbuzz_avatar = urllib.URLopener()
dirname = 'C:\Nimbuzz Avatars'
if not os.path.exists(dirname):
os.mkdir(dirname)
os.chdir("C:\Nimbuzz Avatars")
def reporthook(blocknum, blocksize, totalsize):
readsofar = blocknum * blocksize
if totalsize > 0:
percent = readsofar * 1e2 / totalsize
s = "\r%5.1f%% %*d / %d" % (percent, len(str(totalsize)), readsofar, totalsize)
sys.stderr.write(s)
if readsofar >= totalsize: # near the end
sys.stderr.write("\n")
else: # total size is unknown
sys.stderr.write("read %d\n" % (readsofar,))
nimbuzz_avatar.retrieve("http://avatar.nimbuzz.com/getAvatar?jid=%s@nimbuzz.com" % SELF.avatar.GetValue(),"%s.jpg" % SELF.avatar.GetValue(),reporthook)
print 'Download Completed.'
def OnButton3Click(SELF,event):
""" ######################################## LOGIN BOT ID 1 ######################################## """
user1 = SELF.bot1.GetValue()
pw1 = SELF.botpw.GetValue()
rs1 = 'dbot1'
STATUS = 'chat'
SHOW = 'Hang Bot 1 :)'
NICK1 = 'Bot1'
""" ######################################## LOGIN BOT ID 2 ######################################## """
user2 = SELF.bot2.GetValue()
pw2 = SELF.botpw.GetValue()
rs2 = 'dbot2'
STATUS = 'chat'
SHOW = 'Hang Bot 2 :)'
NICK2 = 'Bot2'
""" ######################################## LOGIN BOT ID 3 ######################################## """
user3 = SELF.bot3.GetValue()
pw3 = SELF.botpw.GetValue()
rs3 = 'dbot3'
STATUS = 'chat'
SHOW = 'Hang Bot 3 :)'
NICK3 = 'Bot3'
""" ######################################## LOGIN BOT ID 4 ######################################## """
user4 = SELF.bot4.GetValue()
pw4 = SELF.botpw.GetValue()
rs4 = 'dbot4'
STATUS = 'chat'
SHOW = 'Hang Bot 2 :)'
NICK4 = 'Bot4'
""" ######################################## LOGIN BOT ID 5 ######################################## """
user5 = SELF.bot5.GetValue()
pw5 = SELF.botpw.GetValue()
rs5 = 'dbot5'
STATUS = 'chat'
SHOW = 'Hang Bot 5 :)'
NICK5 = 'Bot5'
print "\n================================ STARTING YOUR BOT...================================"
print "\n================================ Coded BY DB~@NC ================================\n"
import xmpp
""" ######################################## SET UP CONNECTION FOR BOT ID 1 ######################################## """
dbconn1 = xmpp.Client('nimbuzz.com', debug=False)
if dbconn1.connect( server=('o.nimbuzz.com',5222), secure=False ):
print "Connected"
print "\nTrying to login bot1..\n"
if dbconn1.auth(user1, pw1, rs1 ):
print "Logged in bot1\n\n"
SELF.bot1.SetBackgroundColour(wx.GREEN)
else:
print "Unable to login. Check your username1 and password1"
SELF.bot1.SetBackgroundColour(wx.RED)
raw_input('Press Enter to exit..')
sys.exit(1)
else:
print "Couldn't connect. Restarting.."
os.execl(sys.executable, sys.executable, sys.argv[0])
""" ######################################## SET UP CONNECTION FOR BOT ID 2 ######################################## """
dbconn2 = xmpp.Client('nimbuzz.com', debug=False)
if dbconn2.connect( server=('o.nimbuzz.com',5222), secure=False ):
print "Connected"
print "\nTrying to login bot2..\n"
if dbconn2.auth(user2, pw2, rs2 ):
print "Logged in bot2\n\n"
SELF.bot2.SetBackgroundColour(wx.GREEN)
else:
print "Unable to login. Check your username2 and password2"
SELF.bot2.SetBackgroundColour(wx.RED)
raw_input('Press Enter to exit..')
sys.exit(1)
else:
print "Couldn't connect. Restarting.."
os.execl(sys.executable, sys.executable, sys.argv[0])
""" ######################################## SET UP CONNECTION FOR BOT ID 3 ######################################## """
dbconn3 = xmpp.Client('nimbuzz.com', debug=False)
if dbconn3.connect( server=('o.nimbuzz.com',5222), secure=False ):
print "Connected"
print "\nTrying to login bot3..\n"
if dbconn3.auth(user3, pw3, rs3 ):
print "Logged in bot3\n\n"
SELF.bot3.SetBackgroundColour(wx.GREEN)
else:
print "Unable to login. Check your username3 and password3"
SELF.bot3.SetBackgroundColour(wx.RED)
raw_input('Press Enter to exit..')
sys.exit(1)
else:
print "Couldn't connect. Restarting.."
os.execl(sys.executable, sys.executable, sys.argv[0])
""" ######################################## SET UP CONNECTION FOR BOT ID 4 ######################################## """
dbconn4 = xmpp.Client('nimbuzz.com', debug=False)
if dbconn4.connect( server=('o.nimbuzz.com',5222), secure=False ):
print "Connected"
print "\nTrying to login bot4..\n"
if dbconn4.auth(user4, pw4, rs4 ):
print "Logged in bot4\n\n"
SELF.bot4.SetBackgroundColour(wx.GREEN)
else:
print "Unable to login. Check your username4 and password4"
SELF.bot4.SetBackgroundColour(wx.RED)
raw_input('Press Enter to exit..')
sys.exit(1)
else:
print "Couldn't connect. Restarting.."
os.execl(sys.executable, sys.executable, sys.argv[0])
""" ######################################## SET UP CONNECTION FOR BOT ID 5 ######################################## """
dbconn5 = xmpp.Client('nimbuzz.com', debug=False)
if dbconn5.connect( server=('o.nimbuzz.com',5222), secure=False ):
print "Connected"
print "\nTrying to login bot5..\n"
if dbconn5.auth(user5, pw5, rs5 ):
print "Logged in bot5\n\n"
SELF.bot5.SetBackgroundColour(wx.GREEN)
else:
print "Unable to login. Check your username5 and password5"
SELF.bot5.SetBackgroundColour(wx.RED)
raw_input('Press Enter to exit..')
sys.exit(1)
else:
print "Couldn't connect. Restarting.."
os.execl(sys.executable, sys.executable, sys.argv[0])
""" ######################################## ROOM SET UP & PRESENCES TO CONFERENCE ######################################## """
room = SELF.room.GetValue()
muc1 = xmpp.simplexml.XML2Node("<presence to ='%s@conference.nimbuzz.com/%s'><priority>1</priority></presence>"%(room,NICK1))
dbconn1.send(muc1)
muc2 = xmpp.simplexml.XML2Node("<presence to ='%s@conference.nimbuzz.com/%s'><priority>1</priority></presence>"%(room,NICK2))
dbconn2.send(muc2)
muc3 = xmpp.simplexml.XML2Node("<presence to ='%s@conference.nimbuzz.com/%s'><priority>1</priority></presence>"%(room,NICK3))
dbconn3.send(muc3)
muc4 = xmpp.simplexml.XML2Node("<presence to ='%s@conference.nimbuzz.com/%s'><priority>1</priority></presence>"%(room,NICK4))
dbconn4.send(muc4)
muc5 = xmpp.simplexml.XML2Node("<presence to ='%s@conference.nimbuzz.com/%s'><priority>1</priority></presence>"%(room,NICK5))
dbconn5.send(muc5)
""" ######################################## SET UP BOT MESSAGES FOR YOUR CHATROOM ######################################## """
msg1 = xmpp.simplexml.XML2Node("<message to ='%s@conference.nimbuzz.com/%s' type='chat'><body>im boT 1 :D</body></message>"%(room,user2))
msg2 = xmpp.simplexml.XML2Node("<message to ='%s@conference.nimbuzz.com/%s' type='chat'><body>im boT 2 :P</body></message>"%(room,user1))
msg3 = xmpp.simplexml.XML2Node("<message to ='%s@conference.nimbuzz.com/%s' type='chat'><body>im boT 3 :@</body></message>"%(room,user4))
msg4 = xmpp.simplexml.XML2Node("<message to ='%s@conference.nimbuzz.com/%s' type='chat'><body>im boT 4 :S</body></message>"%(room,user3))
msg5 = xmpp.simplexml.XML2Node("<message to ='%s@conference.nimbuzz.com/%s' type='chat'><body>im boT 5 :$</body></message>"%(room,user1))
msg6 = xmpp.simplexml.XML2Node("<message to ='%s@conference.nimbuzz.com/%s' type='chat'><body>im boT 1 :D</body></message>"%(room,user5))
import time
while True:
dbconn1.send(msg1)
dbconn2.send(msg2)
dbconn3.send(msg3)
dbconn4.send(msg4)
dbconn5.send(msg5)
dbconn1.send(msg6)
time.sleep(60)
while 1:
try:
dbconn1.Process(1)
dbconn2.Process(1)
dbconn3.Process(1)
dbconn4.Process(1)
dbconn5.Process(1)
except Exception, e:
trace=traceback.format_exc()
print trace
if __name__ == "__main__":
app = wx.App(False)
frame = MainWindow(None,wx.ID_ANY,'Nimbuzz Login, Avatar Grabber, Room HangBots wxPython GUI App Coded by db~@NC')
app.MainLoop()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment