def __init__(self, qid, pwd): self.qid = qid # QQ 号 self.__pwd = pwd # QQ密码 self.nickname = None # 初始化QQ昵称 self.http_stream = HTTPStream.instance() # HTTP 流 self.msg_dispatch = MessageDispatch(self) self.aid = 1003903 # aid 固定 self.clientid = random.randrange(11111111, 99999999) # 客户端id 随机固定 self.msg_id = random.randrange(1111111, 99999999) # 消息id, 随机初始化 self.require_check = False # 是否需要验证码 self.poll_and_heart = False # 开始拉取消息和心跳 # 初始化WebQQ登录期间需要保存的数据 self.check_code = None self.skey = None self.ptwebqq = None self.check_data = None # 初始化检查时返回的数据 self.blogin_data = None # 初始化登录前返回的数据 self.friend_info = {} # 初始化好友列表 self.group_info = {} # 初始化组列表 self.group_members_info = {} # 初始化组成员列表 self.hb_time = int(time.time() * 1000) self.login_time = None # 登录的时间 self.last_group_msg_time = time.time() self.last_msg_content = None self.last_msg_numbers = 0 # 剩余位发送的消息数量
def __init__(self): my_jid = JID(USER + '/Bot') self.my_jid = my_jid settings = XMPPSettings({ "software_name": "qxbot", "software_version": __version__, "software_os": "Linux", "tls_verify_peer": False, "starttls": True, "ipv6": False, "poll_interval": 10, }) settings["password"] = PASSWORD version_provider = VersionProvider(settings) event_queue = settings["event_queue"] self.webqq = WebQQ(QQ, event_queue) self.connected = False #self.mainloop = TornadoMainLoop(settings) self.mainloop = EpollMainLoop(settings) self.client = Client(my_jid, [self, version_provider], settings, self.mainloop) self.logger = get_logger() self.msg_dispatch = MessageDispatch(self, self.webqq, BRIDGES) self.xmpp_msg_queue = Queue.Queue()
def __init__(self, qid, pwd, handler = None): self.qid = qid # QQ 号 self.__pwd = pwd # QQ密码 self.nickname = None # 初始化QQ昵称 self.http = TornadoHTTPClient() self.http.set_user_agent("Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/28.0.1500.71 Chrome/28.0.1500.71 Safari/537.36") self.http.debug = TRACE self.http.validate_cert = False self.http.set_global_headers({"Accept-Charset": "UTF-8,*;q=0.5"}) self.msg_dispatch = MessageDispatch(self) self.rc = random.randrange(0, 100) self.aid = 1003903 # aid 固定 self.clientid = random.randrange(11111111, 99999999) # 客户端id 随机固定 self.msg_id = random.randrange(11111111, 99999999) # 消息id, 随机初始化 self.require_check = False # 是否需要验证码 self.poll_and_heart = False # 开始拉取消息和心跳 # 初始化WebQQ登录期间需要保存的数据 self.check_code = None self.ptwebqq = None self.require_check_time = None # 需要验证码的时间 self.checkimg_path = os.path.join(os.path.abspath(os.path.dirname(__file__)), "check.jpg") self.friend_info = {} # 初始化好友列表 self.group_info = {} # 初始化组列表 self.group_sig = {} # 组签名映射, 用作发送临时消息(sess_message) self.group_members_info = {} # 初始化组成员列表 self.mark_to_uin = {} # 备注名->uin的映射 self.daid = 164 self.login_sig = None self.login_time = None # 登录的时间 self.last_msg_time = time.time() self.last_msg_content = None self.last_msg_numbers = 0 # 剩余位发送的消息数量 self.status_callback = None self.poll_stoped = True # 获取消息是否停止 self.hThread = None # 心跳线程 #self.base_header = {"Referer":"https://d.web2.qq.com/cfproxy.html?v=20110331002&callback=1"} self.base_header = {"Referer":"http://s.web2.qq.com/proxy.html?v=20110412001&callback=1&id=3"}
def __init__(self, qid, pwd): self.qid = qid # QQ 号 self.__pwd = pwd # QQ密码 self.nickname = None # 初始化QQ昵称 self.http = TornadoHTTPClient() self.http.set_user_agent( "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/28.0.1500.71 Chrome/28.0.1500.71 Safari/537.36" ) self.http.debug = DEBUG self.http.validate_cert = False self.http.set_global_headers({"Accept-Charset": "UTF-8,*;q=0.5"}) self.msg_dispatch = MessageDispatch(self) self.rc = random.randrange(0, 100) self.aid = 1003903 # aid 固定 self.clientid = random.randrange(11111111, 99999999) # 客户端id 随机固定 self.msg_id = random.randrange(1111111, 99999999) # 消息id, 随机初始化 self.require_check = False # 是否需要验证码 self.poll_and_heart = False # 开始拉取消息和心跳 # 初始化WebQQ登录期间需要保存的数据 self.check_code = None self.ptwebqq = None self.check_data = None # 初始化检查时返回的数据 self.blogin_data = None # 初始化登录前返回的数据 self.friend_info = {} # 初始化好友列表 self.group_info = {} # 初始化组列表 self.group_sig = {} # 组签名映射, 用作发送临时消息(sess_message) self.group_members_info = {} # 初始化组成员列表 self.hb_time = int(time.time() * 1000) self.daid = 164 self.login_sig = None self.login_time = None # 登录的时间 self.last_group_msg_time = time.time() self.last_msg_content = None self.last_msg_numbers = 0 # 剩余位发送的消息数量 self.base_header = { "Referer": "https://d.web2.qq.com/cfproxy.html?v=20110331002&callback=1" }