def __call__(self, ctrl, message=None): pid = message.get('pid',None) if not pid: return user = ctrl.db.select_from('sz_users', pid) if not user: return sid = self._get_sid(ctrl.db) if not sid: logging.info('>>> shortage sid!') ctrl.db.queue_push('queue:srv',{ 'handler': 'image.NewHandler', 'num': 1, }) return req = urllib.make_request(self._url, header = sz_conf['header']({ 'Cookie':'ASP.NET_SessionId=%s'%_sid }), data = { '__VIEWSTATE': user['__VIEWSTATE'], '__EVENTVALIDATION': user['__EVENTVALIDATION'], 'userCode': user['pid'], 'userPassword': user['pwd'], 'txtVail': sid['code'], 'Button1': '', } )
def __call__(self, ctrl, message=None): pid = message.get('pid',None) if not pid: return req = urllib.make_request(self._url) try: resp = urllib2.urlopen(req,sz_conf['header']()) except: return e = self._read(req, resp) if not e : logging.info('warning: init, can not find x,y!') return e['state'] = 'prelogin' ctrl.db.update_table('sz_users', pid, e) ctrl.db.queue_push('queue:srv',{ 'handler': 'user.%sHandler'%(e['state'].capitalize(),), 'pid': pid, })