def _doLogin(self): loginur = gdata.httpSdkInner() + '/open/v3/user/processSnsId' params = {'svninfo': '$robot$', 'appId': str(self.gameId), 'ty_bindmobile': '', 'phoneType': '', 'imei': ['Xb6tiNAVcw5eLrd1F4JTW2dnDrGNr3P0EXl2x99NUeVYGHCQB6ECeQ=='], 'iccid': ['RcjQJPkcLGfazgYaKJGWd8hTMfWp8OVr86NEoHuo1C0fIaCKUsTAhuB7huInoqWf'], 'androidId': ['BwyJv/PH1UCPjZDob4BSPgiwpuTq4dYgt1OFMrAoLJTED4oxlxdnEtuXKiOJxpkV'], 'snsToken': '', 'mac': ['wn+rGmlh6/AG6S6O+7kew0ZaMHsfR0LstUtr/WOvXtX681nrM5c+406L0PvY3P7W'], 'ty_uid': '0', 'clientId': self.clientId, 'deviceName': self.name, 'snsId': strutil.tyDesEncode(self.snsId), 'deviceId': '' } sigstr = '' pkeys = params.keys() pkeys.sort() for k in pkeys: sigstr = sigstr + str(k) + '=' + str(params[k]) + '&' sigstr = sigstr[:-1] code = strutil.md5digest(strutil.tyDesEncode(sigstr)) params['code'] = code userInfo, _ = webpage.webget(loginur, params) userInfo = strutil.loads(userInfo, ignoreException=True, execptionValue=userInfo) if not isinstance(userInfo, dict): ftlog.warn('snsId=', self.snsId, 'login-> return error !', userInfo) self.stop() return if self.isbusy == 0: # 已经关闭 return ftlog.debug('snsId=', self.snsId, 'login->', userInfo) result = userInfo.get('result', {}) self.userId = result.get('userId', 0) if not isinstance(self.userId, int) or self.userId < 0: raise Exception('robot user login false !' + self.snsId) ftlog.debug('Robot login ok snsId=', self.snsId, 'userId=', self.userId) self.userInfo = result self.checkState(CMD_LOGIN)
def getNiCaiCode(cls, mo, nicaiCode): nicaiCodeEncoded = strutil.tyDesEncode(nicaiCode) mo.setResult('nicaiCode', nicaiCodeEncoded)
def _sign(cls, params): sk = sorted(params.keys()) strs = ['%s=%s' % (k, params[k]) for k in sk] md5str = strutil.tyDesEncode('&'.join(strs)) return strutil.md5digest(md5str)
def _doLogin(self): loginur = gdata.httpSdkInner() + '/open/v3/user/processSnsId' params = { 'svninfo': '$robot$', 'appId': str(self.gameId), 'ty_bindmobile': '', 'phoneType': '', 'imei': ['Xb6tiNAVcw5eLrd1F4JTW2dnDrGNr3P0EXl2x99NUeVYGHCQB6ECeQ=='], 'iccid': [ 'RcjQJPkcLGfazgYaKJGWd8hTMfWp8OVr86NEoHuo1C0fIaCKUsTAhuB7huInoqWf' ], 'androidId': [ 'BwyJv/PH1UCPjZDob4BSPgiwpuTq4dYgt1OFMrAoLJTED4oxlxdnEtuXKiOJxpkV' ], 'snsToken': '', 'mac': [ 'wn+rGmlh6/AG6S6O+7kew0ZaMHsfR0LstUtr/WOvXtX681nrM5c+406L0PvY3P7W' ], 'ty_uid': '0', 'clientId': self.clientId, 'deviceName': self.name, 'snsId': strutil.tyDesEncode(self.snsId), 'deviceId': '' } sigstr = '' pkeys = params.keys() pkeys.sort() for k in pkeys: sigstr = sigstr + str(k) + '=' + str(params[k]) + '&' sigstr = sigstr[:-1] code = strutil.md5digest(strutil.tyDesEncode(sigstr)) params['code'] = code userInfo, _ = webpage.webget(loginur, params) userInfo = strutil.loads(userInfo, ignoreException=True, execptionValue=userInfo) if not isinstance(userInfo, dict): ftlog.warn('snsId=', self.snsId, 'login-> return error !', userInfo) self.stop() return if self.isbusy == 0: # 已经关闭 return ftlog.debug('snsId=', self.snsId, 'login->', userInfo) result = userInfo.get('result', {}) self.userId = result.get('userId', 0) if not isinstance(self.userId, int) or self.userId < 0: raise Exception('robot user login false !' + self.snsId) ftlog.debug('Robot login ok snsId=', self.snsId, 'userId=', self.userId) self.userInfo = result self.checkState(CMD_LOGIN)
def _sign(params): sk = sorted(params.keys()) strs = ['%s=%s' % (k, str(params[k]).strip()) for k in sk] md5str = strutil.tyDesEncode('&'.join(strs)) return strutil.md5digest(md5str)