def get(self): """ Determine whether the user correctly spelled the key word during her wakeup call. For instance, 'W-A-L-R-U-S' is correct. """ digits = self.request.get('Digits') the_number = self.request.get('To') try: the_user = User.all().filter('phone_number =', the_number).fetch(1)[0] except IndexError: return 'FAIL' stop = (digits == chars_to_digits('stop')) correct = (digits == chars_to_digits(TODAYS_KEYWORD['word'])) call_record = Call(user=the_user, correct_response=correct) call_record.put() if correct: res = YOU_SPELLED_THE_WALRUS else: if stop: the_user.delete() res = UNSUBSCRIBE else: res = THATS_NOT_HOW_YOU_SPELL_WALRUS % { 'keyword': TODAYS_KEYWORD['word'], 'domain': WALRUS_DOMAIN } return self.return_XML(res)
def get(self): """ Determine whether the user correctly spelled the key word during her wakeup call. For instance, 'W-A-L-R-U-S' is correct. """ digits = self.request.get('Digits') the_number = self.request.get('To') try: the_user = User.all().filter('phone_number =', the_number).fetch(1)[0] except IndexError: return 'FAIL' stop = (digits == chars_to_digits('stop')) correct = (digits == chars_to_digits(TODAYS_KEYWORD['word'])) call_record = Call(user=the_user, correct_response=correct) call_record.put() if correct: res = YOU_SPELLED_THE_WALRUS else: if stop: the_user.delete() res = UNSUBSCRIBE else: res = THATS_NOT_HOW_YOU_SPELL_WALRUS % { 'keyword': TODAYS_KEYWORD['word'], 'domain': WALRUS_DOMAIN } return self.return_XML(res)
def post(self): # we need to create the id before, GAE is slow at this ids = Call.allocate_ids(size=1) user = self.user call = Call(id=ids[0]) call.player = self.request.get('giocatore') call.called_by = user.key call.put() # deffer the task # sendMailCall(call) deferred.defer(sendMailCall, call=call) # redirect to Offer self.redirect(self.uri_for('offer', call=call.key.urlsafe()))
def callsv2(): if not request.args or not request.args['key'] or request.args['key'] != IOS_API_KEY: abort(401) if request.method == "POST": if not request.json or not 'google_places_id' in request.json or not 'name' in request.json or not 'vicinity' in request.json: abort(400) call = Call(google_places_id=request.json['google_places_id'], name=request.json['name'], vicinity=request.json['vicinity']) if 'ios_device_id' in request.json: call.populate(ios_device_id=request.json['ios_device_id']) try: call.put() return jsonify(call.to_dict()) except CapabilityDisabledError: abort(400)