Beispiel #1
0
def log_event(request):
    try:
        tz = pytz.timezone(settings.TIME_ZONE)
        payload = json.loads(request.POST['json'])
    
        logged = tz.localize(datetime.datetime.fromtimestamp(int(payload['timestamp'])))
        
#        event = PurpleRobotEvent.objects.filter(logged=logged, event=payload['event_type']).first()
    
        if True:
            try:
                if len(payload['user_id'].strip()) == 0:
                    payload['user_id'] = '-'
            except KeyError:
                payload['user_id'] = '-'
        
            event = PurpleRobotEvent(payload=json.dumps(payload, indent=2))
            event.logged = logged
            event.event = payload['event_type']
            event.user_id = payload['user_id']
            
            try:
                event.save()
            except pytz.AmbiguousTimeError:
                pass
    
        return HttpResponse(json.dumps({ 'result': 'success' }), content_type='application/json')
    except UnreadablePostError:
        return HttpResponse(json.dumps({ 'result': 'error', 'message': 'Unreadable POST request' }), content_type='application/json')

    return HttpResponse(json.dumps({ 'result': 'error', 'message': 'Unknown error' }), content_type='application/json')
def log_event(request):
    try:
        payload = json.loads(request.POST['json'])
    
        logged = datetime.datetime.fromtimestamp(int(payload['timestamp']))
    
        if PurpleRobotEvent.objects.filter(logged=logged, event=payload['event_type']).count() == 0:
            try:
                if len(payload['user_id'].strip()) == 0:
                    payload['user_id'] = '-'
            except KeyError:
                payload['user_id'] = '-'
        
            event = PurpleRobotEvent(payload=json.dumps(payload, indent=2))
            event.logged = logged
            event.event = payload['event_type']
            event.user_id = payload['user_id']
        
            event.save()
    
        return HttpResponse(json.dumps({ 'result': 'success' }), content_type='application/json')
    except UnreadablePostError:
        return HttpResponse(json.dumps({ 'result': 'error', 'message': 'Unreadable POST request' }), content_type='application/json')

    return HttpResponse(json.dumps({ 'result': 'error', 'message': 'Unknown error' }), content_type='application/json')