def get_token(access_token=None, refresh_token=None): if access_token: logger.debug('get token - access_token: {}\n'.format(access_token)) return next(Token.query(access_token=access_token)) if refresh_token: return next(Token.query(refresh_token=refresh_token)) return None
def get(self): apid = self.request.get("apid") email = self.request.get("email",'').lower() version = int(self.request.get("version", "0")) q = Token.query(Token.email == email) token = q.get() if token: token.apid = apid token.email = email token.version = version else: q = Token.query(Token.apid == apid) token = q.get() if token: token.apid = apid token.email = email token.version=version else:token = Token(apid=apid, email=email, version=version) token.put() cb = self.request.get('callback') self.response.headers['Content-Type'] = 'application/json' if cb: self.response.out.write(cb+'(' + json.dumps({}) +');') else: self.response.out.write(json.dumps({}))
def load_token(access_token=None, refresh_token=None): if access_token: current_access_token = Token.query( Token.access_token == access_token).fetch(1) if current_access_token: return current_access_token[0] elif refresh_token: return Token.query(Token.refresh_token == refresh_token).fetch(1)[0]
def push_to_all(text, count): ios_tokens = Token.query(Token.os!='android').fetch() and_tokens = Token.query(Token.os=='android').fetch() for token in ios_tokens: push_to_apns(token.token, text, count) push_to_gcm(list(token.token for token in and_tokens), text, count)
def get(self): user = users.get_current_user() if user: q = Token.query(Token.email == user.email().lower()) token = q.get() if token and token.version: template = jinja_environment.get_template('templates/index_with_contact.html') else: template = jinja_environment.get_template('templates/index.html') status = 100 if token:status = 200 chat_token = self.request.cookies.get('token2', None) if not chat_token: chat_token = channel.create_channel(user.email().lower(), 1440) expires = time.time() + 86400 self.response.headers.add_header( 'Set-Cookie', 'token2=%s; expires=%s' \ % (chat_token, time.strftime("%a, %d-%b-%Y %T GMT", time.gmtime(expires)))) self.response.out.write(template.render({'status':status, 'logout':users.create_logout_url("/"), 'token':chat_token})) else: template = jinja_environment.get_template('templates/landing.html') self.response.out.write(template.render({"path": users.create_login_url("/")}))
def post(self): isajax = self.request.get('isajax') phone = self.request.get('phone') msg = self.request.get('msg') contact_name = self.request.get('contact_name') user = users.get_current_user() email = user.email().lower() q = Token.query(Token.email == email) token = q.get() status = 100 hist='' logging.debug(email + ' ' + phone + ' ' + msg + ' ' + contact_name) if token: status = 101 if len(phone) and len(msg): status = 200 hist = History(email=email, msg=msg, phone=phone, contact_name = contact_name) hist.put() airship.push({ "android": { "extra": {"msgid": str(hist.key.id()), "phone": phone, "msg":msg} } }, apids=[token.apid]) id = hist.key.id() hist = hist.to_dict() hist['created']=hist['created'].isoformat(); hist['id'] = id hist['type'] = 'sms' self.response.out.write(json.dumps({'status':status, 'msg':hist}))
def regist_token(self, request): if Token.query(Token.token==request.token).fetch(): return RegistTokenResult(result="DUP") token = Token(token=request.token, os='ios'); token.put(); push_to(token, u"환영합니다! 벙커원 교회 주보 알림목록에 등록되었습니다!", 0) return RegistTokenResult(result="OK")
def regist_token(self, request): if Token.query(Token.token == request.token).fetch(): return RegistTokenResult(result="DUP") token = Token(token=request.token, os='ios') token.put() push_to(token, u"환영합니다! 벙커원 교회 주보 알림목록에 등록되었습니다!", 0) return RegistTokenResult(result="OK")
def regist_token(self, request): if Token.query(Token.token==request.token).fetch(): return RegistTokenResult(result="DUP") token = urllib.unquote(request.token) token = Token(token=request.token, os=request.os, width=request.width, height=request.height); token.put(); push_to(token, u"환영합니다! 벙커원 교회 주보 알림목록에 등록되었습니다!", 0) return RegistTokenResult(result="OK")
def post(self): user = users.get_current_user() q = Token.query(Token.email == user.email()) token = q.get() airship.push({ "android": { "extra": {"phone": self.request.get('phone'), "msg":self.request.get('msg')} } }, apids=[token.apid]) template = jinja_environment.get_template('templates/index.html') self.response.out.write(template.render({}))
def regist_token(self, request): if Token.query(Token.token == request.token).fetch(): return RegistTokenResult(result="DUP") token = urllib.unquote(request.token) token = Token(token=request.token, os=request.os, width=request.width, height=request.height) token.put() push_to(token, u"환영합니다! 벙커원 교회 주보 알림목록에 등록되었습니다!", 0) return RegistTokenResult(result="OK")
def save_token(token, request, *args, **kwargs): current_token = Token.query(Token.client_id == request.client.client_id, Token.user == request.user).fetch(1) if current_token: logging.info('current token {}'.format(current_token)) current_token[0].key.delete() expires_in = token.pop('expires_in') expires = datetime.utcnow() + timedelta(seconds=expires_in) token = Token( access_token=token['access_token'], refresh_token=token['refresh_token'], token_type=token['token_type'], scopes=str(token['scope']).split(), expires=expires, client_id=request.client.client_id, user=request.user, ) token.put() return token
def get(self, url_token=None): try: if url_token is not None: token = Token.query(Token.urlsafe_key==url_token).get() if token is None: self.error(404) return #Trouve, c'est OK self.response.set_status(200) except (db.BadValueError, ValueError, KeyError): logging.error('%s', traceback.format_exc()) self.error(400) except Exception: logging.error('%s', traceback.format_exc()) self.error(500)
def get(self, url_token=None): try: if url_token is not None: token = Token.query(Token.urlsafe_key == url_token).get() if token is None: self.error(404) return #Trouve, c'est OK self.response.set_status(200) except (db.BadValueError, ValueError, KeyError): logging.error('%s', traceback.format_exc()) self.error(400) except Exception: logging.error('%s', traceback.format_exc()) self.error(500)
def get(self, username=None, password=None): try: if (username is not None) and (password is not None): # Verification du user. user = User.query( ndb.AND(User.str_username == username, User.str_password == password)).get() if user is None: self.error(404) return # Voir s'il y a deja un token, si oui, on le recréé. token = Token.query(Token.key_user == user.key).get() if token is not None: token.key.delete() token = Token(id=GetTimeInt(), key_user=user.key, b_valide=True) token.urlsafe_key = token.key.urlsafe() token.put() self.response.headers['Content-Type'] = ('text/plain') self.response.write(token.key.urlsafe()) self.response.set_status(200) except (db.BadValueError, ValueError, KeyError): logging.error('%s', traceback.format_exc()) self.error(400) except Exception: logging.error('%s', traceback.format_exc()) self.error(500)
def get(self, username=None, password=None): try: if (username is not None) and (password is not None): # Verification du user. user = User.query(ndb.AND(User.str_username==username,User.str_password==password)).get() if user is None: self.error(404) return # Voir s'il y a deja un token, si oui, on le recréé. token = Token.query(Token.key_user==user.key).get() if token is not None: token.key.delete() token = Token(id=GetTimeInt(), key_user=user.key, b_valide=True) token.urlsafe_key = token.key.urlsafe() token.put() self.response.headers['Content-Type'] = ('text/plain') self.response.write(token.key.urlsafe()) self.response.set_status(200) except (db.BadValueError, ValueError, KeyError): logging.error('%s', traceback.format_exc()) self.error(400) except Exception: logging.error('%s', traceback.format_exc()) self.error(500)
def get(self): and_tokens = Token.query(Token.os=='android').fetch() push_to_gcm(list(token.token for token in and_tokens), 'push test', 1)