def onRegister(self, result, request): if str(result) == '400': request.write(resultValue(result)) else: request.write(resultValue('1')) request.finish()
def onGetEmail(self, result, request): if result[0] is None: request.write(resultValue(605)) elif len(result[0]) == 0: request.write(resultValue(604)) else: request.write(dumps({'result': '1', 'email': result[0]})) request.finish()
def onFoundPassword(self, result, request, username): address = result[0] password = result[1] if address is None: #address in None when user hasnot fill email request.write(resultValue(605)) elif len(address) == 0: #address in empty if user filled in email but didnot authenticate it request.write(resultValue(604)) else: #log.msg('RESULT FROM SQL IS:\t', address, password) try: sendPasswordByEmail(address, password, username) except Exception, e: log.msg(str(e)) request.write(resultValue(1))
def onGetFamily(self, result, request): if len(result) == 0: request.write(resultValue(5031)) else: contactentries = list() for r in result: contact = dict() contact["familynumber"] = r[1] contact["contact"] = r[2] contactentries.append(contact) request.write(dumps({"result": "1", "contactentries": contactentries})) request.finish()
def onGetSticks(self, result, request): if len(result) == 0: request.write(resultValue(404)) else: sticks = list() for r in result: stick = dict() stick['type'] = str(r[3]) stick['simnum'] = str(r[2]) stick['name'] = str(r[1]) stick['imei'] = str(r[0]) sticks.append(stick) request.write(dumps({'result': '1', 'sticks': sticks})) request.finish()
def onResult(self, result, request): log.msg(str(result)) if result in ['400', '401', '402', '403', '404']: request.write(resultValue(result)) elif type(result) == tuple and len(result) != 0: #user has only 1 stick if len(result) == 1: request.write(dumps({'result': '1', 'imei': result[0][1], 'name': result[0][2], 'type': result[0][3], 'simnum': result[0][5]})) else: #user have many sticks info = result[0] for r in result: if r[4] == '1': info = r #print 'INFO !!!! ', info request.write(dumps({'result': '1', 'imei': info[1], 'name': info[2], 'type': info[3], 'simnum': info[5]})) elif type(result) == tuple and len(result) == 0: request.write(resultValue(404)) else: request.write(resultValue(1)) request.finish()
def render_POST(self, request): if request.args["action"] == ["getuserlocation"]: try: payload = self.getLegalPayload(request) # log.msg(str(payload)) except Exception, e: log.msg(e) return resultValue(300) d = selectLocationSql(wsdbpool, payload["imei"], payload["username"], payload["timestamp"], payload) d.addCallback(self.OnGpsResult, request, payload) d.addErrback(onError, request) if payload["imei"] in onlineStatusHelper.connectedSticks: onlineStatusHelper.connectedSticks[payload["imei"]].updateAppRequestTime() log.msg(str(vars(onlineStatusHelper.connectedSticks[payload["imei"]]))) return NOT_DONE_YET
def render_POST(self, request): payload = eval(request.content.read()) #log.msg(str(payload)) if request.args['action'] == ['register']: if 'username' not in payload or 'password' not in payload: return resultValue(300) if len(payload['username']) == 0 or len(payload['password']) == 0: return resultValue(300) d = selectUserSql(wsdbpool, payload['username']).addCallback(self.checkUser, payload) d.addCallback(self.onRegister, request) d.addErrback(onError) return NOT_DONE_YET if request.args['action'] == ['registerandupload']: if 'username' not in payload or 'password' not in payload: return resultValue(300) if 'sticks' in payload: for s in payload['sticks']: if len(s['name']) == 0 or len(s['imei']) == 0: return resultValue(300) handleRegisterandUploadSql(wsdbpool, payload).addCallbacks(self.onRegisterUpload, onError, callbackArgs=(request,)) return NOT_DONE_YET if request.args['action'] == ['login']: if 'username' not in payload or 'password' not in payload: return resultValue(300) if len(payload['username']) == 0 or len(payload['password']) == 0: return resultValue(300) d = selectUserSql(wsdbpool, payload['username']).addCallback(self.onLogin, request, payload).addCallback(self.onResult, request) d.addErrback(onError) return NOT_DONE_YET if request.args['action'] == ['updatepassword']: if 'username' not in payload or 'password' not in payload or 'newpassword' not in payload: return resultValue(300) if len(payload['username']) == 0 or len(payload['newpassword']) == 0: return resultValue(300) d = selectUserSql(wsdbpool, payload['username']).addCallback(self.onLogin, request, payload).addCallback(self.onResult, request) d.addErrback(onError) return NOT_DONE_YET if request.args['action'] == ['setstickname']: if 'username' not in payload or 'imei' not in payload or 'name' not in payload: return resultValue(300) if len(payload['username']) == 0 or len(payload['name']) == 0 or len(payload['imei']) == 0: return resultValue(300) d = selectRelationByImeiSql(wsdbpool, payload['username'], payload['imei']).addCallback(self.onChangeName, payload) d.addCallback(self.onResult, request) d.addErrback(onError) return NOT_DONE_YET if request.args['action'] == ['getsticks']: if 'username' not in payload: return resultValue(300) d = selectRelationSql(wsdbpool, payload['username']) d.addCallback(self.onGetSticks, request) d.addErrback(onError) return NOT_DONE_YET if request.args['action'] == ['uploadsticks']: if 'username' not in payload or 'sticks' not in payload: return resultValue(300) if len(payload['username']) == 0 or len(payload['sticks']) == 0: return resultValue(300) for s in payload['sticks']: if len(s['name']) == 0 or len(s['imei']) == 0: return resultValue(300) d = handleUploadSql(wsdbpool, payload) d.addCallback(self.onUpload, request) d.addErrback(onError) return NOT_DONE_YET if request.args['action'] == ['unsubscribe']: if 'username' not in payload or 'imei' not in payload: return resultValue(300) if len(payload['username']) == 0 or len(payload['imei']) == 0: return resultValue(300) d = handleUnsubscribeSql(wsdbpool, payload['username'], payload['imei']).addCallbacks(self.unSubSuccess, self.unSubError, callbackArgs=(request, payload['imei']), errbackArgs=(request, payload['imei'])) #d.addErrback(onError) return NOT_DONE_YET if request.args['action'] == ['forgotpassword']: if 'username' not in payload : return resultValue(300) if len(payload['username']) == 0: return resultValue(300) d = FoundPasswordSql(wsdbpool, payload['username']) d.addCallbacks(self.onFoundPassword, onError,callbackArgs=(request, str(payload['username'])), errbackArgs=(request,)) return NOT_DONE_YET if request.args['action'] == ['review']: d = insertUserReview(wsdbpool, username=payload['username'], review=payload['review']) d.addCallback(self.onResult, request) return NOT_DONE_YET if request.args['action'] == ['fillinemail']: hashcode = hash(payload['username'] + payload['email']) authlink = 'http://smartstick.huahailife.com:8082/api/user?action=checkemail&&username=%s&&hc=%s' %(payload['username'], hashcode) from sendMail import sendAuthLinkByEmail d = threads.deferToThread(sendAuthLinkByEmail, payload['email'], payload['username'], authlink).addCallback(insertTempEmailSql, wsdbpool, payload['username'], payload['email']) return resultValue(1) if request.args['action'] == ['getemail']: FoundPasswordSql(wsdbpool, payload['username']).addCallback(self.onGetEmail, request) return NOT_DONE_YET
def onRegisterUpload(self, result, request): if result == True: request.write(resultValue(1)) elif result == 400: request.write(resultValue(400)) request.finish()
def onUpload(self, result, request): if result: request.write(resultValue(1)) else: request.write(resultValue(403)) request.finish()
def render_POST(self, request): payload = eval(request.content.read()) # log.msg(str(payload)) apprequest = appRequest(payload) if apprequest.isValid == False: return resultValue(300) if request.args["action"] == ["addnumber"]: d = ( checkUsernamePasswordSql(wsdbpool, payload["username"], payload["password"]) if "username" in payload else checkAdminPwdSql(wsdbpool, payload["imei"], payload["adminpwd"]) ) d.addCallback(nextMethod, checkImeiSimnumSql, wsdbpool, payload["imei"]).addCallback( nextMethod, checkSosnumberSql, wsdbpool, payload["imei"], payload["contactentry"]["sosnumber"], "ADD" ).addCallback( nextMethod, insertTempSosSql, wsdbpool, payload["imei"], payload["contactentry"]["sosnumber"], payload["contactentry"]["contact"], ) d.addCallbacks(onSuccess, onError, callbackArgs=(request,), errbackArgs=(request,)) elif request.args["action"] == ["addfamilynumber"]: d = ( checkUsernamePasswordSql(wsdbpool, payload["username"], payload["password"]) if "username" in payload else checkAdminPwdSql(wsdbpool, payload["imei"], payload["adminpwd"]) ) d.addCallback(nextMethod, checkImeiSimnumSql, wsdbpool, payload["imei"]).addCallback( nextMethod, checkFamilynumberSql, wsdbpool, payload["imei"], payload["contactentry"]["familynumber"], "ADD", ).addCallback( nextMethod, insertTempFamilySql, wsdbpool, payload["imei"], payload["contactentry"]["familynumber"], payload["contactentry"]["contact"], ) d.addCallbacks(onSuccess, onError, callbackArgs=(request,), errbackArgs=(request,)) elif request.args["action"] == ["delnumber"]: d = ( checkUsernamePasswordSql(wsdbpool, payload["username"], payload["password"]) if "username" in payload else checkAdminPwdSql(wsdbpool, payload["imei"], payload["adminpwd"]) ) d.addCallback(nextMethod, checkImeiSimnumSql, wsdbpool, payload["imei"]).addCallback( nextMethod, checkSosnumberSql, wsdbpool, payload["imei"], payload["contactentry"]["sosnumber"], "DEL" ).addCallback( nextMethod, insertTempSosSql, wsdbpool, payload["imei"], payload["contactentry"]["sosnumber"], payload["contactentry"]["contact"], ) d.addCallbacks(onSuccess, onError, callbackArgs=(request,), errbackArgs=(request,)) elif request.args["action"] == ["delfamilynumber"]: d = ( checkUsernamePasswordSql(wsdbpool, payload["username"], payload["password"]) if "username" in payload else checkAdminPwdSql(wsdbpool, payload["imei"], payload["adminpwd"]) ) d.addCallback(nextMethod, checkImeiSimnumSql, wsdbpool, payload["imei"]).addCallback( nextMethod, checkFamilynumberSql, wsdbpool, payload["imei"], payload["contactentry"]["familynumber"], "DEL", ).addCallback( nextMethod, insertTempFamilySql, wsdbpool, payload["imei"], payload["contactentry"]["familynumber"], payload["contactentry"]["contact"], ) d.addCallbacks(onSuccess, onError, callbackArgs=(request,), errbackArgs=(request,)) elif request.args["action"] == ["varifyadd"]: d = verifyOperSql(wsdbpool, payload["imei"], payload["sosnumber"], "ADD") d.addCallbacks(onSuccess, onError, callbackArgs=(request,), errbackArgs=(request,)) elif request.args["action"] == ["varifyaddfamilynumber"]: d = verifyFamilyOperSql(wsdbpool, payload["imei"], payload["familynumber"], "ADD") d.addCallbacks(onSuccess, onError, callbackArgs=(request,), errbackArgs=(request,)) elif request.args["action"] == ["varifydel"]: d = verifyOperSql(wsdbpool, payload["imei"], payload["sosnumber"], "DEL") d.addCallbacks(onSuccess, onError, callbackArgs=(request,), errbackArgs=(request,)) elif request.args["action"] == ["varifydelfamilynumber"]: d = verifyFamilyOperSql(wsdbpool, payload["imei"], payload["familynumber"], "DEL") d.addCallbacks(onSuccess, onError, callbackArgs=(request,), errbackArgs=(request,)) elif request.args["action"] == ["getnumber"]: d = selectSosNumberSql(wsdbpool, payload["imei"]) d.addCallbacks(self.onGetSos, onError, callbackArgs=(request,), errbackArgs=(request,)) elif request.args["action"] == ["getfamilynumber"]: d = selectFamilyNumberSql(wsdbpool, payload["imei"]) d.addCallbacks(self.onGetFamily, onError, callbackArgs=(request,), errbackArgs=(request,)) elif request.args["action"] == ["updatepassword"]: d = checkAdminPwdSql(wsdbpool, payload["imei"], payload["adminpwd"]).addCallback( nextMethod, updateAdminPwdSql, wsdbpool, payload["imei"], payload["newadminpwd"] ) d.addCallbacks(onSuccess, onError, callbackArgs=(request,), errbackArgs=(request,)) return NOT_DONE_YET